@daffodil/design 0.75.0 → 0.76.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 (77) hide show
  1. package/article/src/article-theme.scss +18 -8
  2. package/breadcrumb/README.md +52 -0
  3. package/breadcrumb/breadcrumb/breadcrumb.component.d.ts +7 -0
  4. package/breadcrumb/breadcrumb-item/breadcrumb-item.directive.d.ts +9 -0
  5. package/breadcrumb/breadcrumb.d.ts +3 -0
  6. package/breadcrumb/breadcrumb.module.d.ts +9 -0
  7. package/breadcrumb/examples/basic-breadcrumb/basic-breadcrumb.component.d.ts +5 -0
  8. package/breadcrumb/examples/index.d.ts +1 -0
  9. package/breadcrumb/examples/public_api.d.ts +2 -0
  10. package/breadcrumb/index.d.ts +1 -0
  11. package/breadcrumb/public_api.d.ts +4 -0
  12. package/breadcrumb/src/breadcrumb-theme.scss +13 -0
  13. package/core/article-encapsulated/article-encapsulated.directive.d.ts +17 -5
  14. package/core/colorable/colorable.directive.d.ts +29 -2
  15. package/core/compactable/compactable.directive.d.ts +31 -2
  16. package/core/manage-container-layout/manage-container-layout.directive.d.ts +38 -1
  17. package/core/sizable/sizable.directive.d.ts +46 -3
  18. package/core/skeletonable/skeletonable.directive.d.ts +36 -3
  19. package/core/statusable/statusable.directive.d.ts +33 -6
  20. package/core/text-alignable/text-alignable.directive.d.ts +35 -4
  21. package/esm2022/article/article/article.component.mjs +2 -2
  22. package/esm2022/breadcrumb/breadcrumb/breadcrumb.component.mjs +25 -0
  23. package/esm2022/breadcrumb/breadcrumb-item/breadcrumb-item.directive.mjs +33 -0
  24. package/esm2022/breadcrumb/breadcrumb.mjs +7 -0
  25. package/esm2022/breadcrumb/breadcrumb.module.mjs +26 -0
  26. package/esm2022/breadcrumb/daffodil-design-breadcrumb.mjs +5 -0
  27. package/esm2022/breadcrumb/examples/basic-breadcrumb/basic-breadcrumb.component.mjs +15 -0
  28. package/esm2022/breadcrumb/examples/daffodil-design-breadcrumb-examples.mjs +5 -0
  29. package/esm2022/breadcrumb/examples/index.mjs +2 -0
  30. package/esm2022/breadcrumb/examples/public_api.mjs +5 -0
  31. package/esm2022/breadcrumb/index.mjs +2 -0
  32. package/esm2022/breadcrumb/public_api.mjs +5 -0
  33. package/esm2022/core/article-encapsulated/article-encapsulated.directive.mjs +18 -6
  34. package/esm2022/core/colorable/colorable.directive.mjs +30 -3
  35. package/esm2022/core/compactable/compactable.directive.mjs +32 -3
  36. package/esm2022/core/manage-container-layout/manage-container-layout.directive.mjs +39 -2
  37. package/esm2022/core/sizable/sizable.directive.mjs +47 -4
  38. package/esm2022/core/skeletonable/skeletonable.directive.mjs +37 -4
  39. package/esm2022/core/statusable/statusable.directive.mjs +34 -7
  40. package/esm2022/core/text-alignable/text-alignable.directive.mjs +36 -5
  41. package/esm2022/modal/examples/basic-modal/basic-modal.component.mjs +2 -2
  42. package/esm2022/modal/modal/modal-config.mjs +1 -1
  43. package/esm2022/modal/service/modal.service.mjs +4 -1
  44. package/esm2022/sidebar/helper/is-docked-mode.mjs +9 -0
  45. package/esm2022/sidebar/helper/is-floating-mode.mjs +9 -0
  46. package/esm2022/sidebar/public_api.mjs +5 -1
  47. package/esm2022/sidebar/service/registration.type.mjs +2 -0
  48. package/esm2022/sidebar/service/sidebar.service.mjs +36 -0
  49. package/esm2022/sidebar/sidebar-viewport/sidebar-viewport.component.mjs +3 -3
  50. package/esm2022/tree/tree/tree.component.mjs +2 -2
  51. package/esm2022/tree/tree-item/tree-item.directive.mjs +3 -3
  52. package/fesm2022/daffodil-design-article.mjs +2 -2
  53. package/fesm2022/daffodil-design-article.mjs.map +1 -1
  54. package/fesm2022/daffodil-design-breadcrumb-examples.mjs +26 -0
  55. package/fesm2022/daffodil-design-breadcrumb-examples.mjs.map +1 -0
  56. package/fesm2022/daffodil-design-breadcrumb.mjs +90 -0
  57. package/fesm2022/daffodil-design-breadcrumb.mjs.map +1 -0
  58. package/fesm2022/daffodil-design-modal-examples.mjs +1 -1
  59. package/fesm2022/daffodil-design-modal-examples.mjs.map +1 -1
  60. package/fesm2022/daffodil-design-modal.mjs +3 -0
  61. package/fesm2022/daffodil-design-modal.mjs.map +1 -1
  62. package/fesm2022/daffodil-design-sidebar.mjs +57 -5
  63. package/fesm2022/daffodil-design-sidebar.mjs.map +1 -1
  64. package/fesm2022/daffodil-design-tree.mjs +4 -4
  65. package/fesm2022/daffodil-design-tree.mjs.map +1 -1
  66. package/fesm2022/daffodil-design.mjs +265 -26
  67. package/fesm2022/daffodil-design.mjs.map +1 -1
  68. package/modal/README.md +14 -1
  69. package/modal/modal/modal-config.d.ts +2 -0
  70. package/package.json +1 -1
  71. package/scss/theme.scss +2 -0
  72. package/scss/theming/_theme-css-variables.scss +1 -1
  73. package/sidebar/helper/is-docked-mode.d.ts +5 -0
  74. package/sidebar/helper/is-floating-mode.d.ts +5 -0
  75. package/sidebar/public_api.d.ts +4 -0
  76. package/sidebar/service/registration.type.d.ts +11 -0
  77. package/sidebar/service/sidebar.service.d.ts +25 -0
@@ -17,11 +17,11 @@ class DaffArticleComponent {
17
17
  this.role = 'article';
18
18
  }
19
19
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: DaffArticleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
20
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: DaffArticleComponent, selector: "daff-article", host: { properties: { "class.daff-article": "this.class", "attr.role": "this.role" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [".daff-article{display:block;overflow:hidden}.daff-article a:not(.daff-ae *,.daff-ae){font-weight:600;text-decoration:none}.daff-article a:not(.daff-ae *,.daff-ae):hover{text-decoration:underline}.daff-article h1:not(.daff-ae *,.daff-ae),.daff-article h2:not(.daff-ae *,.daff-ae),.daff-article h3:not(.daff-ae *,.daff-ae),.daff-article h4:not(.daff-ae *,.daff-ae),.daff-article h5:not(.daff-ae *,.daff-ae),.daff-article h6:not(.daff-ae *,.daff-ae){margin-bottom:1.5rem;word-wrap:break-word}.daff-article h1:not(.daff-ae *,.daff-ae) code,.daff-article h2:not(.daff-ae *,.daff-ae) code,.daff-article h3:not(.daff-ae *,.daff-ae) code,.daff-article h4:not(.daff-ae *,.daff-ae) code,.daff-article h5:not(.daff-ae *,.daff-ae) code,.daff-article h6:not(.daff-ae *,.daff-ae) code{font-size:.875em;font-weight:600;line-height:.875em}.daff-article h2:not(.daff-ae *,.daff-ae),.daff-article h3:not(.daff-ae *,.daff-ae),.daff-article h4:not(.daff-ae *,.daff-ae),.daff-article h5:not(.daff-ae *,.daff-ae),.daff-article h6:not(.daff-ae *,.daff-ae){margin-top:2.5rem}.daff-article h1:not(.daff-ae *,.daff-ae){font-weight:700;font-size:2rem;line-height:2.25rem}@media (min-width: 768px){.daff-article h1:not(.daff-ae *,.daff-ae){font-size:3rem;line-height:3.5rem}}.daff-article h1:not(.daff-ae *,.daff-ae)+p{font-size:1.25rem;line-height:1.75rem;font-weight:400}.daff-article h1:not(.daff-ae *,.daff-ae)+p code{font-size:1.25rem;line-height:1.5rem;font-weight:400}.daff-article h2:not(.daff-ae *,.daff-ae){font-size:2rem;line-height:2.5rem}.daff-article h3:not(.daff-ae *,.daff-ae){font-size:1.5rem;line-height:2rem}.daff-article h4:not(.daff-ae *,.daff-ae){font-size:1.25rem;line-height:1.5rem}.daff-article h5:not(.daff-ae *,.daff-ae){font-size:1.125rem;line-height:1.5rem}.daff-article h6:not(.daff-ae *,.daff-ae){font-size:1rem;line-height:1.5rem}.daff-article p:not(.daff-ae *,.daff-ae){margin:0 0 1rem}.daff-article strong{font-weight:700}.daff-article pre{display:block;border-radius:.25em;font-size:.875rem;line-height:1.5rem;margin:1.5rem 0;padding:1.5rem;overflow:auto;white-space:pre-wrap}.daff-article pre:last-child{margin-bottom:0}.daff-article pre code{display:block;padding:0}.daff-article code{border-radius:.25em;font-size:.875rem;line-height:1rem;padding:.25em}.daff-article__meta{font-size:.875rem}.daff-article hr{border:0;height:1px;margin:2rem 0}.daff-article blockquote{border-radius:.25em;margin:1.5rem 0;padding:1rem 1.5rem}.daff-article blockquote:last-child{margin-bottom:0}.daff-article blockquote cite{font-size:.875rem;font-weight:400;line-height:1.25rem;display:block;margin-top:1rem}.daff-article blockquote p:last-of-type{margin:0}.daff-article table{display:block;border-collapse:collapse;margin:1.5rem 0;overflow:auto;width:100%}.daff-article table:last-child{margin-bottom:0}.daff-article table th{font-weight:600;outline:0;padding:1rem;text-align:left;vertical-align:bottom;box-sizing:border-box}.daff-article table td{padding:.5rem 1rem;vertical-align:top;box-sizing:border-box}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
20
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: DaffArticleComponent, selector: "daff-article", host: { properties: { "class.daff-article": "this.class", "attr.role": "this.role" } }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [".daff-article{display:block;overflow:hidden}.daff-article a:not(.daff-ae *,.daff-ae){font-weight:600;text-decoration:none}.daff-article a:not(.daff-ae *,.daff-ae):hover{text-decoration:underline}.daff-article a:not(.daff-ae *,.daff-ae) code{font-size:.875em;font-weight:600;line-height:.875em}.daff-article h1:not(.daff-ae *,.daff-ae),.daff-article h2:not(.daff-ae *,.daff-ae),.daff-article h3:not(.daff-ae *,.daff-ae),.daff-article h4:not(.daff-ae *,.daff-ae),.daff-article h5:not(.daff-ae *,.daff-ae),.daff-article h6:not(.daff-ae *,.daff-ae){margin-bottom:1.5rem;word-wrap:break-word}.daff-article h1:not(.daff-ae *,.daff-ae) code,.daff-article h2:not(.daff-ae *,.daff-ae) code,.daff-article h3:not(.daff-ae *,.daff-ae) code,.daff-article h4:not(.daff-ae *,.daff-ae) code,.daff-article h5:not(.daff-ae *,.daff-ae) code,.daff-article h6:not(.daff-ae *,.daff-ae) code{font-size:.875em;font-weight:600;line-height:.875em}.daff-article h2:not(.daff-ae *,.daff-ae),.daff-article h3:not(.daff-ae *,.daff-ae),.daff-article h4:not(.daff-ae *,.daff-ae),.daff-article h5:not(.daff-ae *,.daff-ae),.daff-article h6:not(.daff-ae *,.daff-ae){margin-top:2.5rem}.daff-article h1:not(.daff-ae *,.daff-ae){font-weight:700;font-size:2rem;line-height:2.25rem}@media (min-width: 768px){.daff-article h1:not(.daff-ae *,.daff-ae){font-size:3rem;line-height:3.5rem}}.daff-article h1:not(.daff-ae *,.daff-ae)+p{font-size:1.25rem;line-height:1.75rem;font-weight:400}.daff-article h2:not(.daff-ae *,.daff-ae){font-size:2rem;line-height:2.5rem}.daff-article h3:not(.daff-ae *,.daff-ae){font-size:1.5rem;line-height:2rem}.daff-article h4:not(.daff-ae *,.daff-ae){font-size:1.25rem;line-height:1.5rem}.daff-article h5:not(.daff-ae *,.daff-ae){font-size:1.125rem;line-height:1.5rem}.daff-article h6:not(.daff-ae *,.daff-ae){font-size:1rem;line-height:1.5rem}.daff-article p:not(.daff-ae *,.daff-ae){margin:0 0 1rem}.daff-article strong{font-weight:700}.daff-article pre{display:block;border-radius:.25em;font-size:.875rem;line-height:1.5rem;margin:1.5rem 0;padding:1.5rem;overflow:auto;white-space:pre-wrap}.daff-article pre:last-child{margin-bottom:0}.daff-article pre code{display:block;padding:0}.daff-article code{border-radius:.25em;font-size:.875rem;line-height:1rem;padding:.125em .25em}.daff-article__meta{font-size:.875rem}.daff-article hr{border:0;height:1px;margin:2rem 0}.daff-article blockquote{border-radius:.25em;margin:1.5rem 0;padding:1rem 1.5rem}.daff-article blockquote:last-child{margin-bottom:0}.daff-article blockquote cite{font-size:.875rem;font-weight:400;line-height:1.25rem;display:block;margin-top:1rem}.daff-article blockquote p:last-of-type{margin:0}.daff-article table{display:block;border-collapse:collapse;margin:1.5rem 0;overflow:auto;width:100%}.daff-article table:last-child{margin-bottom:0}.daff-article table th{font-weight:600;outline:0;padding:1rem;text-align:left;vertical-align:bottom;box-sizing:border-box}.daff-article table td{padding:.5rem 1rem;vertical-align:top;box-sizing:border-box}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
21
21
  }
22
22
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: DaffArticleComponent, decorators: [{
23
23
  type: Component,
24
- args: [{ selector: 'daff-article', template: '<ng-content></ng-content>', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".daff-article{display:block;overflow:hidden}.daff-article a:not(.daff-ae *,.daff-ae){font-weight:600;text-decoration:none}.daff-article a:not(.daff-ae *,.daff-ae):hover{text-decoration:underline}.daff-article h1:not(.daff-ae *,.daff-ae),.daff-article h2:not(.daff-ae *,.daff-ae),.daff-article h3:not(.daff-ae *,.daff-ae),.daff-article h4:not(.daff-ae *,.daff-ae),.daff-article h5:not(.daff-ae *,.daff-ae),.daff-article h6:not(.daff-ae *,.daff-ae){margin-bottom:1.5rem;word-wrap:break-word}.daff-article h1:not(.daff-ae *,.daff-ae) code,.daff-article h2:not(.daff-ae *,.daff-ae) code,.daff-article h3:not(.daff-ae *,.daff-ae) code,.daff-article h4:not(.daff-ae *,.daff-ae) code,.daff-article h5:not(.daff-ae *,.daff-ae) code,.daff-article h6:not(.daff-ae *,.daff-ae) code{font-size:.875em;font-weight:600;line-height:.875em}.daff-article h2:not(.daff-ae *,.daff-ae),.daff-article h3:not(.daff-ae *,.daff-ae),.daff-article h4:not(.daff-ae *,.daff-ae),.daff-article h5:not(.daff-ae *,.daff-ae),.daff-article h6:not(.daff-ae *,.daff-ae){margin-top:2.5rem}.daff-article h1:not(.daff-ae *,.daff-ae){font-weight:700;font-size:2rem;line-height:2.25rem}@media (min-width: 768px){.daff-article h1:not(.daff-ae *,.daff-ae){font-size:3rem;line-height:3.5rem}}.daff-article h1:not(.daff-ae *,.daff-ae)+p{font-size:1.25rem;line-height:1.75rem;font-weight:400}.daff-article h1:not(.daff-ae *,.daff-ae)+p code{font-size:1.25rem;line-height:1.5rem;font-weight:400}.daff-article h2:not(.daff-ae *,.daff-ae){font-size:2rem;line-height:2.5rem}.daff-article h3:not(.daff-ae *,.daff-ae){font-size:1.5rem;line-height:2rem}.daff-article h4:not(.daff-ae *,.daff-ae){font-size:1.25rem;line-height:1.5rem}.daff-article h5:not(.daff-ae *,.daff-ae){font-size:1.125rem;line-height:1.5rem}.daff-article h6:not(.daff-ae *,.daff-ae){font-size:1rem;line-height:1.5rem}.daff-article p:not(.daff-ae *,.daff-ae){margin:0 0 1rem}.daff-article strong{font-weight:700}.daff-article pre{display:block;border-radius:.25em;font-size:.875rem;line-height:1.5rem;margin:1.5rem 0;padding:1.5rem;overflow:auto;white-space:pre-wrap}.daff-article pre:last-child{margin-bottom:0}.daff-article pre code{display:block;padding:0}.daff-article code{border-radius:.25em;font-size:.875rem;line-height:1rem;padding:.25em}.daff-article__meta{font-size:.875rem}.daff-article hr{border:0;height:1px;margin:2rem 0}.daff-article blockquote{border-radius:.25em;margin:1.5rem 0;padding:1rem 1.5rem}.daff-article blockquote:last-child{margin-bottom:0}.daff-article blockquote cite{font-size:.875rem;font-weight:400;line-height:1.25rem;display:block;margin-top:1rem}.daff-article blockquote p:last-of-type{margin:0}.daff-article table{display:block;border-collapse:collapse;margin:1.5rem 0;overflow:auto;width:100%}.daff-article table:last-child{margin-bottom:0}.daff-article table th{font-weight:600;outline:0;padding:1rem;text-align:left;vertical-align:bottom;box-sizing:border-box}.daff-article table td{padding:.5rem 1rem;vertical-align:top;box-sizing:border-box}\n"] }]
24
+ args: [{ selector: 'daff-article', template: '<ng-content></ng-content>', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".daff-article{display:block;overflow:hidden}.daff-article a:not(.daff-ae *,.daff-ae){font-weight:600;text-decoration:none}.daff-article a:not(.daff-ae *,.daff-ae):hover{text-decoration:underline}.daff-article a:not(.daff-ae *,.daff-ae) code{font-size:.875em;font-weight:600;line-height:.875em}.daff-article h1:not(.daff-ae *,.daff-ae),.daff-article h2:not(.daff-ae *,.daff-ae),.daff-article h3:not(.daff-ae *,.daff-ae),.daff-article h4:not(.daff-ae *,.daff-ae),.daff-article h5:not(.daff-ae *,.daff-ae),.daff-article h6:not(.daff-ae *,.daff-ae){margin-bottom:1.5rem;word-wrap:break-word}.daff-article h1:not(.daff-ae *,.daff-ae) code,.daff-article h2:not(.daff-ae *,.daff-ae) code,.daff-article h3:not(.daff-ae *,.daff-ae) code,.daff-article h4:not(.daff-ae *,.daff-ae) code,.daff-article h5:not(.daff-ae *,.daff-ae) code,.daff-article h6:not(.daff-ae *,.daff-ae) code{font-size:.875em;font-weight:600;line-height:.875em}.daff-article h2:not(.daff-ae *,.daff-ae),.daff-article h3:not(.daff-ae *,.daff-ae),.daff-article h4:not(.daff-ae *,.daff-ae),.daff-article h5:not(.daff-ae *,.daff-ae),.daff-article h6:not(.daff-ae *,.daff-ae){margin-top:2.5rem}.daff-article h1:not(.daff-ae *,.daff-ae){font-weight:700;font-size:2rem;line-height:2.25rem}@media (min-width: 768px){.daff-article h1:not(.daff-ae *,.daff-ae){font-size:3rem;line-height:3.5rem}}.daff-article h1:not(.daff-ae *,.daff-ae)+p{font-size:1.25rem;line-height:1.75rem;font-weight:400}.daff-article h2:not(.daff-ae *,.daff-ae){font-size:2rem;line-height:2.5rem}.daff-article h3:not(.daff-ae *,.daff-ae){font-size:1.5rem;line-height:2rem}.daff-article h4:not(.daff-ae *,.daff-ae){font-size:1.25rem;line-height:1.5rem}.daff-article h5:not(.daff-ae *,.daff-ae){font-size:1.125rem;line-height:1.5rem}.daff-article h6:not(.daff-ae *,.daff-ae){font-size:1rem;line-height:1.5rem}.daff-article p:not(.daff-ae *,.daff-ae){margin:0 0 1rem}.daff-article strong{font-weight:700}.daff-article pre{display:block;border-radius:.25em;font-size:.875rem;line-height:1.5rem;margin:1.5rem 0;padding:1.5rem;overflow:auto;white-space:pre-wrap}.daff-article pre:last-child{margin-bottom:0}.daff-article pre code{display:block;padding:0}.daff-article code{border-radius:.25em;font-size:.875rem;line-height:1rem;padding:.125em .25em}.daff-article__meta{font-size:.875rem}.daff-article hr{border:0;height:1px;margin:2rem 0}.daff-article blockquote{border-radius:.25em;margin:1.5rem 0;padding:1rem 1.5rem}.daff-article blockquote:last-child{margin-bottom:0}.daff-article blockquote cite{font-size:.875rem;font-weight:400;line-height:1.25rem;display:block;margin-top:1rem}.daff-article blockquote p:last-of-type{margin:0}.daff-article table{display:block;border-collapse:collapse;margin:1.5rem 0;overflow:auto;width:100%}.daff-article table:last-child{margin-bottom:0}.daff-article table th{font-weight:600;outline:0;padding:1rem;text-align:left;vertical-align:bottom;box-sizing:border-box}.daff-article table td{padding:.5rem 1rem;vertical-align:top;box-sizing:border-box}\n"] }]
25
25
  }], propDecorators: { class: [{
26
26
  type: HostBinding,
27
27
  args: ['class.daff-article']
@@ -1 +1 @@
1
- {"version":3,"file":"daffodil-design-article.mjs","sources":["../../../libs/design/article/src/article/article.component.ts","../../../libs/design/article/src/article-meta/article-meta.directive.ts","../../../libs/design/article/src/article.module.ts","../../../libs/design/article/src/daffodil-design-article.ts"],"sourcesContent":["import {\n Component,\n ViewEncapsulation,\n HostBinding,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\n/**\n * A component for creating articles within your page.\n */\n@Component({\n selector: 'daff-article',\n template: '<ng-content></ng-content>',\n styleUrls: ['./article.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffArticleComponent {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-article') class = true;\n\n /**\n * @docs-private\n */\n @HostBinding('attr.role') role = 'article';\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffArticleMeta]',\n})\nexport class DaffArticleMetaDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-article__meta') class = true;\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffArticleComponent } from './article/article.component';\nimport { DaffArticleMetaDirective } from './article-meta/article-meta.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffArticleComponent,\n DaffArticleMetaDirective,\n ],\n exports: [\n DaffArticleComponent,\n DaffArticleMetaDirective,\n ],\n})\nexport class DaffArticleModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daffodil-design-article.mjs","sources":["../../../libs/design/article/src/article/article.component.ts","../../../libs/design/article/src/article-meta/article-meta.directive.ts","../../../libs/design/article/src/article.module.ts","../../../libs/design/article/src/daffodil-design-article.ts"],"sourcesContent":["import {\n Component,\n ViewEncapsulation,\n HostBinding,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\n/**\n * A component for creating articles within your page.\n */\n@Component({\n selector: 'daff-article',\n template: '<ng-content></ng-content>',\n styleUrls: ['./article.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffArticleComponent {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-article') class = true;\n\n /**\n * @docs-private\n */\n @HostBinding('attr.role') role = 'article';\n}\n","import {\n Directive,\n HostBinding,\n} from '@angular/core';\n\n@Directive({\n selector: '[daffArticleMeta]',\n})\nexport class DaffArticleMetaDirective {\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-article__meta') class = true;\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { DaffArticleComponent } from './article/article.component';\nimport { DaffArticleMetaDirective } from './article-meta/article-meta.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n DaffArticleComponent,\n DaffArticleMetaDirective,\n ],\n exports: [\n DaffArticleComponent,\n DaffArticleMetaDirective,\n ],\n})\nexport class DaffArticleModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Component, ChangeDetectionStrategy } from '@angular/core';
3
+ import * as i1 from '@daffodil/design/breadcrumb';
4
+ import { DAFF_BREADCRUMB_COMPONENTS } from '@daffodil/design/breadcrumb';
5
+
6
+ class BasicBreadcrumbComponent {
7
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: BasicBreadcrumbComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: BasicBreadcrumbComponent, isStandalone: true, selector: "basic-breadcrumb", ngImport: i0, template: "<nav aria-label=\"Breadcrumb\">\n\t<ol daff-breadcrumb>\n\t\t<li daffBreadcrumbItem>\n\t\t\t<a routerLink=\"/link\">Link</a>\n\t\t</li>\n\t\t<li daffBreadcrumbItem [active]=\"true\">Active Link</li>\n\t</ol>\n</nav>", dependencies: [{ kind: "component", type: i1.DaffBreadcrumbComponent, selector: "ol[daff-breadcrumb]" }, { kind: "directive", type: i1.DaffBreadcrumbItemDirective, selector: "li[daffBreadcrumbItem]", inputs: ["active"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: BasicBreadcrumbComponent, decorators: [{
11
+ type: Component,
12
+ args: [{ selector: 'basic-breadcrumb', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
13
+ DAFF_BREADCRUMB_COMPONENTS,
14
+ ], template: "<nav aria-label=\"Breadcrumb\">\n\t<ol daff-breadcrumb>\n\t\t<li daffBreadcrumbItem>\n\t\t\t<a routerLink=\"/link\">Link</a>\n\t\t</li>\n\t\t<li daffBreadcrumbItem [active]=\"true\">Active Link</li>\n\t</ol>\n</nav>" }]
15
+ }] });
16
+
17
+ const BREADCRUMB_EXAMPLES = [
18
+ BasicBreadcrumbComponent,
19
+ ];
20
+
21
+ /**
22
+ * Generated bundle index. Do not edit.
23
+ */
24
+
25
+ export { BREADCRUMB_EXAMPLES };
26
+ //# sourceMappingURL=daffodil-design-breadcrumb-examples.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"daffodil-design-breadcrumb-examples.mjs","sources":["../../../libs/design/breadcrumb/examples/src/basic-breadcrumb/basic-breadcrumb.component.ts","../../../libs/design/breadcrumb/examples/src/basic-breadcrumb/basic-breadcrumb.component.html","../../../libs/design/breadcrumb/examples/src/public_api.ts","../../../libs/design/breadcrumb/examples/src/daffodil-design-breadcrumb-examples.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\n\nimport { DAFF_BREADCRUMB_COMPONENTS } from '@daffodil/design/breadcrumb';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'basic-breadcrumb',\n templateUrl: './basic-breadcrumb.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n DAFF_BREADCRUMB_COMPONENTS,\n ],\n})\nexport class BasicBreadcrumbComponent {}\n","<nav aria-label=\"Breadcrumb\">\n\t<ol daff-breadcrumb>\n\t\t<li daffBreadcrumbItem>\n\t\t\t<a routerLink=\"/link\">Link</a>\n\t\t</li>\n\t\t<li daffBreadcrumbItem [active]=\"true\">Active Link</li>\n\t</ol>\n</nav>","import { BasicBreadcrumbComponent } from './basic-breadcrumb/basic-breadcrumb.component';\n\nexport const BREADCRUMB_EXAMPLES = [\n BasicBreadcrumbComponent,\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAiBa,wBAAwB,CAAA;kIAAxB,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAxB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,wBAAwB,4ECjBrC,yNAOM,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,uBAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,2BAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;4FDUO,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAVpC,SAAS;AAEE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,mBAEX,uBAAuB,CAAC,MAAM,EAAA,UAAA,EACnC,IAAI,EACP,OAAA,EAAA;wBACP,0BAA0B;AAC3B,qBAAA,EAAA,QAAA,EAAA,yNAAA,EAAA,CAAA;;;AEbU,MAAA,mBAAmB,GAAG;IACjC,wBAAwB;;;ACH1B;;AAEG;;;;"}
@@ -0,0 +1,90 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Component, ChangeDetectionStrategy, ViewEncapsulation, HostBinding, Directive, Input, NgModule } from '@angular/core';
3
+ import * as i1 from '@daffodil/design';
4
+ import { DaffArticleEncapsulatedDirective, DaffSkeletonableDirective } from '@daffodil/design';
5
+
6
+ class DaffBreadcrumbComponent {
7
+ constructor() {
8
+ this.class = true;
9
+ }
10
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: DaffBreadcrumbComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: DaffBreadcrumbComponent, isStandalone: true, selector: "ol[daff-breadcrumb]", host: { properties: { "class.daff-breadcrumb": "this.class" } }, hostDirectives: [{ directive: i1.DaffArticleEncapsulatedDirective }, { directive: i1.DaffSkeletonableDirective, inputs: ["skeleton", "skeleton"] }], ngImport: i0, template: "<ng-content select=\"[daffBreadcrumbItem]\"></ng-content>", styles: [".daff-breadcrumb{display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:0}.daff-breadcrumb__item{font-size:1rem}.daff-breadcrumb__item a{text-decoration:none}.daff-breadcrumb__item a:hover{text-decoration:underline}.daff-breadcrumb__item.active{font-weight:500}.daff-breadcrumb__item:not(:last-child):after{content:\"/\";color:currentColor;font-weight:400;margin:0 .5rem}.daff-breadcrumb.daff-skeleton{display:flex;position:relative;max-width:290px;width:100%}.daff-breadcrumb.daff-skeleton:before{animation-name:loading;animation-duration:1s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate;content:\"\";height:24px;width:100%;position:absolute;top:0;left:0}.daff-breadcrumb.daff-skeleton .daff-breadcrumb__item{visibility:hidden}.daff-breadcrumb.daff-skeleton .daff-breadcrumb__item:before{content:unset}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: DaffBreadcrumbComponent, decorators: [{
14
+ type: Component,
15
+ args: [{ selector: 'ol[daff-breadcrumb]', hostDirectives: [
16
+ { directive: DaffArticleEncapsulatedDirective },
17
+ {
18
+ directive: DaffSkeletonableDirective,
19
+ inputs: ['skeleton'],
20
+ },
21
+ ], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, template: "<ng-content select=\"[daffBreadcrumbItem]\"></ng-content>", styles: [".daff-breadcrumb{display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:0}.daff-breadcrumb__item{font-size:1rem}.daff-breadcrumb__item a{text-decoration:none}.daff-breadcrumb__item a:hover{text-decoration:underline}.daff-breadcrumb__item.active{font-weight:500}.daff-breadcrumb__item:not(:last-child):after{content:\"/\";color:currentColor;font-weight:400;margin:0 .5rem}.daff-breadcrumb.daff-skeleton{display:flex;position:relative;max-width:290px;width:100%}.daff-breadcrumb.daff-skeleton:before{animation-name:loading;animation-duration:1s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate;content:\"\";height:24px;width:100%;position:absolute;top:0;left:0}.daff-breadcrumb.daff-skeleton .daff-breadcrumb__item{visibility:hidden}.daff-breadcrumb.daff-skeleton .daff-breadcrumb__item:before{content:unset}\n"] }]
22
+ }], propDecorators: { class: [{
23
+ type: HostBinding,
24
+ args: ['class.daff-breadcrumb']
25
+ }] } });
26
+
27
+ class DaffBreadcrumbItemDirective {
28
+ constructor() {
29
+ this.class = true;
30
+ /** Whether or not the breadcrumb item is active */
31
+ this.active = false;
32
+ }
33
+ get ariaCurrent() {
34
+ return this.active ? 'page' : 'false';
35
+ }
36
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: DaffBreadcrumbItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
37
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.10", type: DaffBreadcrumbItemDirective, isStandalone: true, selector: "li[daffBreadcrumbItem]", inputs: { active: "active" }, host: { properties: { "class.daff-breadcrumb__item": "this.class", "attr.aria-current": "this.ariaCurrent", "class.active": "this.active" } }, ngImport: i0 }); }
38
+ }
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: DaffBreadcrumbItemDirective, decorators: [{
40
+ type: Directive,
41
+ args: [{
42
+ selector: 'li[daffBreadcrumbItem]',
43
+ standalone: true,
44
+ }]
45
+ }], propDecorators: { class: [{
46
+ type: HostBinding,
47
+ args: ['class.daff-breadcrumb__item']
48
+ }], ariaCurrent: [{
49
+ type: HostBinding,
50
+ args: ['attr.aria-current']
51
+ }], active: [{
52
+ type: Input
53
+ }, {
54
+ type: HostBinding,
55
+ args: ['class.active']
56
+ }] } });
57
+
58
+ const DAFF_BREADCRUMB_COMPONENTS = [
59
+ DaffBreadcrumbComponent,
60
+ DaffBreadcrumbItemDirective,
61
+ ];
62
+
63
+ /** @deprecated in favor of {@link DAFF_BREADCRUMB_COMPONENTS} */
64
+ class DaffBreadcrumbModule {
65
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: DaffBreadcrumbModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
66
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.10", ngImport: i0, type: DaffBreadcrumbModule, imports: [DaffBreadcrumbComponent,
67
+ DaffBreadcrumbItemDirective], exports: [DaffBreadcrumbComponent,
68
+ DaffBreadcrumbItemDirective] }); }
69
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: DaffBreadcrumbModule }); }
70
+ }
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: DaffBreadcrumbModule, decorators: [{
72
+ type: NgModule,
73
+ args: [{
74
+ imports: [
75
+ DaffBreadcrumbComponent,
76
+ DaffBreadcrumbItemDirective,
77
+ ],
78
+ exports: [
79
+ DaffBreadcrumbComponent,
80
+ DaffBreadcrumbItemDirective,
81
+ ],
82
+ }]
83
+ }] });
84
+
85
+ /**
86
+ * Generated bundle index. Do not edit.
87
+ */
88
+
89
+ export { DAFF_BREADCRUMB_COMPONENTS, DaffBreadcrumbComponent, DaffBreadcrumbItemDirective, DaffBreadcrumbModule };
90
+ //# sourceMappingURL=daffodil-design-breadcrumb.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"daffodil-design-breadcrumb.mjs","sources":["../../../libs/design/breadcrumb/src/breadcrumb/breadcrumb.component.ts","../../../libs/design/breadcrumb/src/breadcrumb/breadcrumb.component.html","../../../libs/design/breadcrumb/src/breadcrumb-item/breadcrumb-item.directive.ts","../../../libs/design/breadcrumb/src/breadcrumb.ts","../../../libs/design/breadcrumb/src/breadcrumb.module.ts","../../../libs/design/breadcrumb/src/daffodil-design-breadcrumb.ts"],"sourcesContent":["import {\n Component,\n ChangeDetectionStrategy,\n HostBinding,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport {\n DaffArticleEncapsulatedDirective,\n DaffSkeletonableDirective,\n} from '@daffodil/design';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'ol[daff-breadcrumb]',\n templateUrl: './breadcrumb.component.html',\n styleUrls: ['./breadcrumb.component.scss'],\n hostDirectives: [\n { directive: DaffArticleEncapsulatedDirective },\n {\n directive: DaffSkeletonableDirective,\n inputs: ['skeleton'],\n },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n})\n\nexport class DaffBreadcrumbComponent {\n @HostBinding('class.daff-breadcrumb') class = true;\n}\n","<ng-content select=\"[daffBreadcrumbItem]\"></ng-content>","import {\n Directive,\n HostBinding,\n Input,\n} from '@angular/core';\n\n@Directive({\n selector: 'li[daffBreadcrumbItem]',\n standalone: true,\n})\nexport class DaffBreadcrumbItemDirective {\n @HostBinding('class.daff-breadcrumb__item') class = true;\n\n @HostBinding('attr.aria-current') get ariaCurrent() {\n return this.active ? 'page' : 'false';\n }\n\n /** Whether or not the breadcrumb item is active */\n @Input() @HostBinding('class.active') active = false;\n\n}\n","import { DaffBreadcrumbComponent } from './breadcrumb/breadcrumb.component';\nimport { DaffBreadcrumbItemDirective } from './breadcrumb-item/breadcrumb-item.directive';\n\nexport const DAFF_BREADCRUMB_COMPONENTS = <const> [\n DaffBreadcrumbComponent,\n DaffBreadcrumbItemDirective,\n];\n","import { NgModule } from '@angular/core';\n\nimport { DaffBreadcrumbComponent } from './breadcrumb/breadcrumb.component';\nimport { DaffBreadcrumbItemDirective } from './breadcrumb-item/breadcrumb-item.directive';\n\n/** @deprecated in favor of {@link DAFF_BREADCRUMB_COMPONENTS} */\n@NgModule({\n imports: [\n DaffBreadcrumbComponent,\n DaffBreadcrumbItemDirective,\n ],\n exports: [\n DaffBreadcrumbComponent,\n DaffBreadcrumbItemDirective,\n ],\n})\nexport class DaffBreadcrumbModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -19,7 +19,7 @@ class BasicModalComponent {
19
19
  this.modalService = modalService;
20
20
  }
21
21
  showModal() {
22
- this.modal = this.modalService.open(BasicModalContentComponent);
22
+ this.modal = this.modalService.open(BasicModalContentComponent, { ariaLabelledBy: 'Modal Title' });
23
23
  }
24
24
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: BasicModalComponent, deps: [{ token: i1.DaffModalService }], target: i0.ɵɵFactoryTarget.Component }); }
25
25
  /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: BasicModalComponent, isStandalone: true, selector: "basic-modal", ngImport: i0, template: "<button daff-button (click)=\"showModal()\">Open Modal</button>\n", dependencies: [{ kind: "ngmodule", type: DaffButtonModule }, { kind: "component", type: i2.DaffButtonComponent, selector: "button[daff-button],button[daff-stroked-button],button[daff-raised-button],button[daff-flat-button],button[daff-icon-button],button[daff-underline-button],a[daff-button],a[daff-stroked-button],a[daff-raised-button],a[daff-flat-button],a[daff-icon-button],a[daff-underline-button]", inputs: ["loading", "tabindex", "disabled"] }, { kind: "ngmodule", type: DaffModalModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
@@ -1 +1 @@
1
- {"version":3,"file":"daffodil-design-modal-examples.mjs","sources":["../../../libs/design/modal/examples/src/basic-modal/modal-content.component.ts","../../../libs/design/modal/examples/src/basic-modal/modal-content.component.html","../../../libs/design/modal/examples/src/basic-modal/basic-modal.component.ts","../../../libs/design/modal/examples/src/basic-modal/basic-modal.component.html","../../../libs/design/modal/examples/src/public_api.ts","../../../libs/design/modal/examples/src/daffodil-design-modal-examples.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\n\nimport { DaffButtonModule } from '@daffodil/design/button';\nimport { DaffModalModule } from '@daffodil/design/modal';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'basic-modal-content',\n templateUrl: './modal-content.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [DaffModalModule, DaffButtonModule],\n})\nexport class BasicModalContentComponent {\n\n}\n","<daff-modal-header>\n\t<h5 daffModalTitle>Descriptive title of the modal</h5>\n</daff-modal-header>\n<daff-modal-content>\n\tModal content goes here. Components can be placed in here. The content is scrollable.\n</daff-modal-content>\n<daff-modal-actions>\n\t<button daff-flat-button color=\"theme-contrast\" daffModalClose>Cancel</button>\n\t<button type=\"button\" daff-button>Save Changes</button>\n</daff-modal-actions>","import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\n\nimport { DaffButtonModule } from '@daffodil/design/button';\nimport {\n DaffModalComponent,\n DaffModalModule,\n DaffModalService,\n} from '@daffodil/design/modal';\n\nimport { BasicModalContentComponent } from './modal-content.component';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'basic-modal',\n templateUrl: './basic-modal.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [DaffButtonModule, DaffModalModule],\n})\nexport class BasicModalComponent {\n modal: DaffModalComponent;\n\n constructor(private modalService: DaffModalService) {}\n\n showModal() {\n this.modal = this.modalService.open(BasicModalContentComponent);\n }\n}\n","<button daff-button (click)=\"showModal()\">Open Modal</button>\n","import { BasicModalComponent } from './basic-modal/basic-modal.component';\n\nexport const MODAL_EXAMPLES = [\n BasicModalComponent,\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MAgBa,0BAA0B,CAAA;kIAA1B,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,SAAA,EAAA,IAAA,EAAA,0BAA0B,EChBvC,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,yaASqB,EDKT,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,eAAe,0fAAE,gBAAgB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,yRAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;4FAEhC,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBARtC,SAAS;+BAEE,qBAAqB,EAAA,eAAA,EAEd,uBAAuB,CAAC,MAAM,EAAA,UAAA,EACnC,IAAI,EAAA,OAAA,EACP,CAAC,eAAe,EAAE,gBAAgB,CAAC,EAAA,QAAA,EAAA,yaAAA,EAAA,CAAA;;;MEQjC,mBAAmB,CAAA;AAG9B,IAAA,WAAA,CAAoB,YAA8B,EAAA;QAA9B,IAAY,CAAA,YAAA,GAAZ,YAAY,CAAkB;KAAI;IAEtD,SAAS,GAAA;QACP,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;KACjE;kIAPU,mBAAmB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAnB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,mBAAmB,ECtBhC,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,aAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,mEACA,EDmBY,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,gBAAgB,qaAAE,eAAe,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;4FAEhC,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAR/B,SAAS;+BAEE,aAAa,EAAA,eAAA,EAEN,uBAAuB,CAAC,MAAM,EAAA,UAAA,EACnC,IAAI,EAAA,OAAA,EACP,CAAC,gBAAgB,EAAE,eAAe,CAAC,EAAA,QAAA,EAAA,mEAAA,EAAA,CAAA;;;AElBjC,MAAA,cAAc,GAAG;IAC5B,mBAAmB;;;ACHrB;;AAEG;;;;"}
1
+ {"version":3,"file":"daffodil-design-modal-examples.mjs","sources":["../../../libs/design/modal/examples/src/basic-modal/modal-content.component.ts","../../../libs/design/modal/examples/src/basic-modal/modal-content.component.html","../../../libs/design/modal/examples/src/basic-modal/basic-modal.component.ts","../../../libs/design/modal/examples/src/basic-modal/basic-modal.component.html","../../../libs/design/modal/examples/src/public_api.ts","../../../libs/design/modal/examples/src/daffodil-design-modal-examples.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\n\nimport { DaffButtonModule } from '@daffodil/design/button';\nimport { DaffModalModule } from '@daffodil/design/modal';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'basic-modal-content',\n templateUrl: './modal-content.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [DaffModalModule, DaffButtonModule],\n})\nexport class BasicModalContentComponent {\n\n}\n","<daff-modal-header>\n\t<h5 daffModalTitle>Descriptive title of the modal</h5>\n</daff-modal-header>\n<daff-modal-content>\n\tModal content goes here. Components can be placed in here. The content is scrollable.\n</daff-modal-content>\n<daff-modal-actions>\n\t<button daff-flat-button color=\"theme-contrast\" daffModalClose>Cancel</button>\n\t<button type=\"button\" daff-button>Save Changes</button>\n</daff-modal-actions>","import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\n\nimport { DaffButtonModule } from '@daffodil/design/button';\nimport {\n DaffModalComponent,\n DaffModalModule,\n DaffModalService,\n} from '@daffodil/design/modal';\n\nimport { BasicModalContentComponent } from './modal-content.component';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'basic-modal',\n templateUrl: './basic-modal.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [DaffButtonModule, DaffModalModule],\n})\nexport class BasicModalComponent {\n modal: DaffModalComponent;\n\n constructor(private modalService: DaffModalService) {}\n\n showModal() {\n this.modal = this.modalService.open(\n BasicModalContentComponent,\n { ariaLabelledBy: 'Modal Title' },\n );\n }\n}\n","<button daff-button (click)=\"showModal()\">Open Modal</button>\n","import { BasicModalComponent } from './basic-modal/basic-modal.component';\n\nexport const MODAL_EXAMPLES = [\n BasicModalComponent,\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MAgBa,0BAA0B,CAAA;kIAA1B,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,SAAA,EAAA,IAAA,EAAA,0BAA0B,EChBvC,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,yaASqB,EDKT,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,eAAe,0fAAE,gBAAgB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,yRAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;4FAEhC,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBARtC,SAAS;+BAEE,qBAAqB,EAAA,eAAA,EAEd,uBAAuB,CAAC,MAAM,EAAA,UAAA,EACnC,IAAI,EAAA,OAAA,EACP,CAAC,eAAe,EAAE,gBAAgB,CAAC,EAAA,QAAA,EAAA,yaAAA,EAAA,CAAA;;;MEQjC,mBAAmB,CAAA;AAG9B,IAAA,WAAA,CAAoB,YAA8B,EAAA;QAA9B,IAAY,CAAA,YAAA,GAAZ,YAAY,CAAkB;KAAI;IAEtD,SAAS,GAAA;AACP,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CACjC,0BAA0B,EAC1B,EAAE,cAAc,EAAE,aAAa,EAAE,CAClC,CAAC;KACH;kIAVU,mBAAmB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAnB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,mBAAmB,ECtBhC,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,aAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,mEACA,EDmBY,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,gBAAgB,qaAAE,eAAe,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;4FAEhC,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAR/B,SAAS;+BAEE,aAAa,EAAA,eAAA,EAEN,uBAAuB,CAAC,MAAM,EAAA,UAAA,EACnC,IAAI,EAAA,OAAA,EACP,CAAC,gBAAgB,EAAE,eAAe,CAAC,EAAA,QAAA,EAAA,mEAAA,EAAA,CAAA;;;AElBjC,MAAA,cAAc,GAAG;IAC5B,mBAAmB;;;ACHrB;;AAEG;;;;"}
@@ -63,6 +63,9 @@ class DaffModalService {
63
63
  const _ref = this._createOverlayRef();
64
64
  const _modal = this._attachModal(_ref);
65
65
  const _attachedModal = this._attachModalContent(component, _modal);
66
+ if (configuration?.ariaLabelledBy) {
67
+ _modal.instance.ariaLabelledBy = configuration.ariaLabelledBy;
68
+ }
66
69
  const modal = {
67
70
  modal: _modal,
68
71
  overlay: _ref,
@@ -1 +1 @@
1
- {"version":3,"file":"daffodil-design-modal.mjs","sources":["../../../libs/design/modal/src/animations/modal-animation.ts","../../../libs/design/modal/src/animations/modal-animation-state.ts","../../../libs/design/modal/src/service/modal.service.ts","../../../libs/design/modal/src/modal/modal.component.ts","../../../libs/design/modal/src/modal/modal.component.html","../../../libs/design/modal/src/modal-actions/modal-actions.component.ts","../../../libs/design/modal/src/modal-close/modal-close.directive.ts","../../../libs/design/modal/src/modal-content/modal-content.component.ts","../../../libs/design/modal/src/modal-header/modal-header.component.ts","../../../libs/design/modal/src/modal-header/modal-header.component.html","../../../libs/design/modal/src/modal-title/modal-title.directive.ts","../../../libs/design/modal/src/modal.module.ts","../../../libs/design/modal/src/daffodil-design-modal.ts"],"sourcesContent":["import {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\nexport const daffFadeAnimations: {\n readonly fade: AnimationTriggerMetadata;\n} = {\n fade: trigger('fade', [\n state('open', style({ opacity: 1 })),\n state('closed', style({ opacity: 0 })),\n transition('open <=> closed', animate('400ms cubic-bezier(0.25, 0.8, 0.25, 1)')),\n ]),\n};\n","export const getAnimationState = (open: boolean) => open ? 'open' : 'closed';\n","import { AnimationEvent } from '@angular/animations';\nimport {\n OverlayRef,\n Overlay,\n GlobalPositionStrategy,\n} from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport {\n Injectable,\n Type,\n ComponentRef,\n Injector,\n} from '@angular/core';\n\nimport { DaffModal } from '../modal/modal';\nimport { DaffModalConfiguration } from '../modal/modal-config';\nimport { DaffModalComponent } from '../modal/modal.component';\n\n@Injectable()\nexport class DaffModalService {\n private _modals: Map<DaffModalComponent, DaffModal> = new Map();\n\n constructor(private overlay: Overlay) {}\n\n private defaultConfiguration: DaffModalConfiguration = {};\n\n private _attachModal(\n\t overlayRef: OverlayRef,\n ): ComponentRef<DaffModalComponent> {\n\t const modal = overlayRef.attach(\n new ComponentPortal(\n DaffModalComponent,\n undefined,\n Injector.create({ providers: [{\n provide: DaffModalService,\n useValue: this,\n }]}),\n ),\n );\n\t modal.instance.open = true;\n\t return modal;\n }\n\n private _attachModalContent(\n\t component: Type<any>,\n\t modal: ComponentRef<DaffModalComponent>,\n ): void {\n\t modal.instance.attachContent(new ComponentPortal(component));\n }\n\n private _createOverlayRef(): OverlayRef {\n\t return this.overlay.create({\n\t hasBackdrop: true,\n\t positionStrategy: new GlobalPositionStrategy()\n\t .centerHorizontally()\n .centerVertically(),\n\t scrollStrategy: this.overlay.scrollStrategies.block(),\n\t });\n }\n\n private _removeModal(modal: DaffModal) {\n if (!this._modals.has(modal.modal.instance)) {\n throw new Error(\n\t 'The Modal that you are trying to remove does not exist.',\n\t );\n }\n\n\t this._modals.delete(modal.modal.instance);\n\n\t modal.overlay.dispose();\n }\n\n open(\n\t component: Type<any>,\n\t configuration?: Partial<DaffModalConfiguration>,\n ): DaffModalComponent {\n\t const config = { ...this.defaultConfiguration, ...configuration };\n\t const _ref = this._createOverlayRef();\n\t const _modal = this._attachModal(_ref);\n\t const _attachedModal = this._attachModalContent(component, _modal);\n\n\t const modal: DaffModal = {\n\t modal: _modal,\n\t overlay: _ref,\n\t };\n\n\t this._modals.set(modal.modal.instance, modal);\n\n\t _ref\n\t .backdropClick()\n\t .subscribe(() =>\n\t config.onBackdropClicked\n\t ? config.onBackdropClicked()\n\t : this.close(modal.modal.instance),\n\t );\n\t return modal.modal.instance;\n }\n\n close(component: DaffModalComponent): void {\n\t component.open = false;\n const modal = this._modals.get(component);\n\n\t modal.overlay.detachBackdrop();\n\t component.closedAnimationCompleted.subscribe(\n\t (e: AnimationEvent) => this._removeModal(modal),\n\t );\n }\n}\n","import { AnimationEvent } from '@angular/animations';\nimport {\n ConfigurableFocusTrap,\n ConfigurableFocusTrapFactory,\n} from '@angular/cdk/a11y';\nimport {\n CdkPortalOutlet,\n ComponentPortal,\n} from '@angular/cdk/portal';\nimport {\n Component,\n EventEmitter,\n Input,\n HostBinding,\n ChangeDetectionStrategy,\n ViewChild,\n HostListener,\n ElementRef,\n AfterContentInit,\n AfterViewInit,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { daffFocusableElementsSelector } from '@daffodil/design';\n\nimport { daffFadeAnimations } from '../animations/modal-animation';\nimport { getAnimationState } from '../animations/modal-animation-state';\nimport { DaffModalService } from '../service/modal.service';\n\n@Component({\n selector: 'daff-modal',\n templateUrl: './modal.component.html',\n styleUrls: ['./modal.component.scss'],\n animations: [daffFadeAnimations.fade],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class DaffModalComponent implements AfterContentInit, AfterViewInit {\n /**\n * Sets a class of .daff-modal to the host element.\n */\n @HostBinding('class.daff-modal') modalClass = true;\n\n /**\n * Sets the role to dialog.\n */\n @HostBinding('attr.role') role = 'dialog';\n\n /**\n * Sets aria-modal to true.\n */\n @HostBinding('attr.aria-modal') ariaModal = true;\n\n private _ariaLabelledBy = null;\n\n /**\n * The aria-labelledby for the modal. This is set by the id of\n * {@link DaffModalTitleDirective} when it is used.\n *\n */\n @HostBinding('attr.aria-labelledby') get ariaLabelledBy() {\n return this._ariaLabelledBy;\n } set ariaLabelledBy(value: string) {\n this._ariaLabelledBy = value;\n }\n\n /**\n * Dictates whether or not a modal is open or closed.\n */\n @Input() open = false;\n\n /**\n * The CDK Portal outlet used to portal content into the modal.\n */\n @ViewChild(CdkPortalOutlet, { static: true }) private _portalOutlet: CdkPortalOutlet;\n\n /**\n * Event fired when the close animation is completed.\n */\n animationCompleted: EventEmitter<any> = new EventEmitter<any>();\n\n /**\n * Event fired when the close animation is completed.\n */\n closedAnimationCompleted: EventEmitter<any> = new EventEmitter<\n any\n >();\n\n /**\n * @docs-private\n */\n @HostListener('keydown.escape')\n onEscape() {\n this.modalService.close(this);\n }\n\n private _focusTrap: ConfigurableFocusTrap;\n\n constructor(\n private modalService: DaffModalService,\n private _focusTrapFactory: ConfigurableFocusTrapFactory,\n private _elementRef: ElementRef<HTMLElement>,\n ) {\n }\n\n ngAfterContentInit() {\n this._focusTrap = this._focusTrapFactory.create(\n\t this._elementRef.nativeElement,\n\t );\n }\n\n ngAfterViewInit() {\n const focusableChild = (<HTMLElement>this._elementRef.nativeElement.querySelector(\n daffFocusableElementsSelector)\n );\n\n if(focusableChild) {\n focusableChild.focus();\n } else {\n // There's a timing condition when computing HostBindings afterContentInit\n // so to allow the menu to be focused, we manually set the tabindex.\n this._elementRef.nativeElement.tabIndex = 0;\n (<HTMLElement>this._elementRef.nativeElement).focus();\n }\n }\n\n /**\n * Helper method to attach portable content to modal.\n */\n attachContent(portal: ComponentPortal<any>): any {\n const attachContent = this._portalOutlet.attachComponentPortal(portal);\n\n // When a component is created to inject content into the modal, it can\n // interfere with the display styles applied to the modal's header, content,\n // and action sections. By setting `display: contents;` on the custom\n // component, it is visually removed from the UI, allowing the content\n // within it to inherit the modal's styles.\n attachContent.location.nativeElement.style.display = 'contents';\n\n return attachContent;\n }\n\n /** Animation hook that controls the entrance and exit animations of the modal. */\n @HostBinding('@fade') get fadeState(): string {\n\t return getAnimationState(this.open);\n }\n\n /**\n * Animation event that can used to hook into when\n * animations are fully completed. We use this in the DaffModalService\n * to determine when to actually remove the dynamically rendered element from the DOM\n * so that the animation does not clip as the element is removed.\n */\n @HostListener('@fade.done', ['$event'])\n animationDone(e: AnimationEvent) {\n\t this.animationCompleted.emit(e);\n\t if (e.toState === 'closed') {\n\t this.closedAnimationCompleted.emit(e);\n\t }\n }\n}\n","<ng-template cdkPortalOutlet></ng-template>\n","import {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-modal-actions',\n template: '<ng-content></ng-content>',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffModalActionsComponent {\n @HostBinding('class.daff-modal-actions') class = true;\n}\n","import {\n Directive,\n HostBinding,\n HostListener,\n Optional,\n} from '@angular/core';\n\nimport { DaffModalComponent } from '../modal/modal.component';\nimport { DaffModalService } from '../service/modal.service';\n\n/**\n * The DaffModalCloseDirective is a helper directive that passes a click\n * event to the button it's used with to close a modal. It needs to be\n * implemented with the `<button>` HTML element to work. This helps to\n * reduce code duplication.\n */\n@Directive({\n selector: 'button[daffModalClose]',\n})\n\nexport class DaffModalCloseDirective {\n constructor(\n private modalService: DaffModalService,\n @Optional() private modal: DaffModalComponent,\n ) {}\n\n /**\n * Event fired when the button the directive is attached to is clicked. This is used to close a modal.\n */\n @HostListener('click')\n _onCloseModal(event: MouseEvent) {\n\t if(this.modal) {\n this.modalService.close(this.modal);\n }\n }\n\n /**\n * Sets the button type attribute to button.\n */\n @HostBinding('attr.type') typeAttribute = 'button';\n}\n","import {\n Component,\n ChangeDetectionStrategy,\n HostBinding,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-modal-content',\n template: '<ng-content></ng-content>',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffModalContentComponent {\n @HostBinding('class.daff-modal-content') class = true;\n}\n","import {\n Component,\n ViewEncapsulation,\n HostBinding,\n ChangeDetectionStrategy,\n Input,\n} from '@angular/core';\nimport { faXmark } from '@fortawesome/free-solid-svg-icons';\n\n@Component({\n selector: 'daff-modal-header',\n templateUrl: './modal-header.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffModalHeaderComponent {\n faXmark = faXmark;\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-modal-header') class = true;\n\n /**\n * Whether or not a modal is dismissible.\n */\n @Input() dismissible = true;\n}\n","<ng-content select=\"[daffModalTitle]\"></ng-content>\n<ng-container *ngIf=\"dismissible\">\n\t<button daff-icon-button color=\"theme-contrast\"\n\t\tdaffModalClose\n\t\tclass=\"daff-modal-header__dismiss-button\"\n\t\taria-label=\"Close modal\">\n\t\t\t<fa-icon [icon]=\"faXmark\" size=\"lg\"></fa-icon>\n\t</button>\n</ng-container>","import {\n Directive,\n HostBinding,\n Optional,\n} from '@angular/core';\n\nimport { DaffModalComponent } from '../modal/modal.component';\n\nlet modalTitleId = 0;\n\n/**\n * Title of a modal.\n */\n@Directive({\n selector: '[daffModalTitle]',\n})\n\nexport class DaffModalTitleDirective {\n /**\n * @docs-private\n */\n @HostBinding('class.daff-modal-title') class = true;\n\n private _id = '';\n\n /**\n * The html `id` of the modal title.\n */\n @HostBinding('attr.id') get uniqueId() {\n return this._id;\n }\n\n constructor(@Optional() private modal: DaffModalComponent) {\n modalTitleId++;\n\n this._id = 'daff-modal-title-' + modalTitleId;\n\n /**\n * Sets the ariaLabelledBy of the modal to the id of the modal title.\n */\n if(this.modal) {\n this.modal.ariaLabelledBy = this.uniqueId;\n }\n }\n}\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\n\nimport { DaffButtonModule } from '@daffodil/design/button';\n\nimport { DaffModalComponent } from './modal/modal.component';\nimport { DaffModalActionsComponent } from './modal-actions/modal-actions.component';\nimport { DaffModalCloseDirective } from './modal-close/modal-close.directive';\nimport { DaffModalContentComponent } from './modal-content/modal-content.component';\nimport { DaffModalHeaderComponent } from './modal-header/modal-header.component';\nimport { DaffModalTitleDirective } from './modal-title/modal-title.directive';\nimport { DaffModalService } from './service/modal.service';\n\n@NgModule({\n imports: [\n CommonModule,\n PortalModule,\n OverlayModule,\n DaffButtonModule,\n FontAwesomeModule,\n ],\n exports: [\n DaffModalHeaderComponent,\n DaffModalTitleDirective,\n DaffModalContentComponent,\n DaffModalActionsComponent,\n DaffModalCloseDirective,\n ],\n declarations: [\n DaffModalComponent,\n DaffModalHeaderComponent,\n DaffModalTitleDirective,\n DaffModalContentComponent,\n DaffModalActionsComponent,\n DaffModalCloseDirective,\n ],\n providers: [\n DaffModalService,\n ],\n})\nexport class DaffModalModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.DaffModalService","i2.DaffModalComponent","i1","i2","i3","i4.DaffModalCloseDirective","i1.DaffModalComponent"],"mappings":"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"}
1
+ {"version":3,"file":"daffodil-design-modal.mjs","sources":["../../../libs/design/modal/src/animations/modal-animation.ts","../../../libs/design/modal/src/animations/modal-animation-state.ts","../../../libs/design/modal/src/service/modal.service.ts","../../../libs/design/modal/src/modal/modal.component.ts","../../../libs/design/modal/src/modal/modal.component.html","../../../libs/design/modal/src/modal-actions/modal-actions.component.ts","../../../libs/design/modal/src/modal-close/modal-close.directive.ts","../../../libs/design/modal/src/modal-content/modal-content.component.ts","../../../libs/design/modal/src/modal-header/modal-header.component.ts","../../../libs/design/modal/src/modal-header/modal-header.component.html","../../../libs/design/modal/src/modal-title/modal-title.directive.ts","../../../libs/design/modal/src/modal.module.ts","../../../libs/design/modal/src/daffodil-design-modal.ts"],"sourcesContent":["import {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\nexport const daffFadeAnimations: {\n readonly fade: AnimationTriggerMetadata;\n} = {\n fade: trigger('fade', [\n state('open', style({ opacity: 1 })),\n state('closed', style({ opacity: 0 })),\n transition('open <=> closed', animate('400ms cubic-bezier(0.25, 0.8, 0.25, 1)')),\n ]),\n};\n","export const getAnimationState = (open: boolean) => open ? 'open' : 'closed';\n","import { AnimationEvent } from '@angular/animations';\nimport {\n OverlayRef,\n Overlay,\n GlobalPositionStrategy,\n} from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport {\n Injectable,\n Type,\n ComponentRef,\n Injector,\n} from '@angular/core';\n\nimport { DaffModal } from '../modal/modal';\nimport { DaffModalConfiguration } from '../modal/modal-config';\nimport { DaffModalComponent } from '../modal/modal.component';\n\n@Injectable()\nexport class DaffModalService {\n private _modals: Map<DaffModalComponent, DaffModal> = new Map();\n\n constructor(private overlay: Overlay) {}\n\n private defaultConfiguration: DaffModalConfiguration = {};\n\n private _attachModal(\n\t overlayRef: OverlayRef,\n ): ComponentRef<DaffModalComponent> {\n\t const modal = overlayRef.attach(\n new ComponentPortal(\n DaffModalComponent,\n undefined,\n Injector.create({ providers: [{\n provide: DaffModalService,\n useValue: this,\n }]}),\n ),\n );\n\t modal.instance.open = true;\n\t return modal;\n }\n\n private _attachModalContent(\n\t component: Type<any>,\n\t modal: ComponentRef<DaffModalComponent>,\n ): void {\n\t modal.instance.attachContent(new ComponentPortal(component));\n }\n\n private _createOverlayRef(): OverlayRef {\n\t return this.overlay.create({\n\t hasBackdrop: true,\n\t positionStrategy: new GlobalPositionStrategy()\n\t .centerHorizontally()\n .centerVertically(),\n\t scrollStrategy: this.overlay.scrollStrategies.block(),\n\t });\n }\n\n private _removeModal(modal: DaffModal) {\n if (!this._modals.has(modal.modal.instance)) {\n throw new Error(\n\t 'The Modal that you are trying to remove does not exist.',\n\t );\n }\n\n\t this._modals.delete(modal.modal.instance);\n\n\t modal.overlay.dispose();\n }\n\n open(\n\t component: Type<any>,\n\t configuration?: Partial<DaffModalConfiguration>,\n ): DaffModalComponent {\n\t const config = { ...this.defaultConfiguration, ...configuration };\n\t const _ref = this._createOverlayRef();\n\t const _modal = this._attachModal(_ref);\n\t const _attachedModal = this._attachModalContent(component, _modal);\n\n if(configuration?.ariaLabelledBy) {\n _modal.instance.ariaLabelledBy = configuration.ariaLabelledBy;\n }\n\n\t const modal: DaffModal = {\n\t modal: _modal,\n\t overlay: _ref,\n\t };\n\n\t this._modals.set(modal.modal.instance, modal);\n\n\t _ref\n\t .backdropClick()\n\t .subscribe(() =>\n\t config.onBackdropClicked\n\t ? config.onBackdropClicked()\n\t : this.close(modal.modal.instance),\n\t );\n\t return modal.modal.instance;\n }\n\n close(component: DaffModalComponent): void {\n\t component.open = false;\n const modal = this._modals.get(component);\n\n\t modal.overlay.detachBackdrop();\n\t component.closedAnimationCompleted.subscribe(\n\t (e: AnimationEvent) => this._removeModal(modal),\n\t );\n }\n}\n","import { AnimationEvent } from '@angular/animations';\nimport {\n ConfigurableFocusTrap,\n ConfigurableFocusTrapFactory,\n} from '@angular/cdk/a11y';\nimport {\n CdkPortalOutlet,\n ComponentPortal,\n} from '@angular/cdk/portal';\nimport {\n Component,\n EventEmitter,\n Input,\n HostBinding,\n ChangeDetectionStrategy,\n ViewChild,\n HostListener,\n ElementRef,\n AfterContentInit,\n AfterViewInit,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { daffFocusableElementsSelector } from '@daffodil/design';\n\nimport { daffFadeAnimations } from '../animations/modal-animation';\nimport { getAnimationState } from '../animations/modal-animation-state';\nimport { DaffModalService } from '../service/modal.service';\n\n@Component({\n selector: 'daff-modal',\n templateUrl: './modal.component.html',\n styleUrls: ['./modal.component.scss'],\n animations: [daffFadeAnimations.fade],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class DaffModalComponent implements AfterContentInit, AfterViewInit {\n /**\n * Sets a class of .daff-modal to the host element.\n */\n @HostBinding('class.daff-modal') modalClass = true;\n\n /**\n * Sets the role to dialog.\n */\n @HostBinding('attr.role') role = 'dialog';\n\n /**\n * Sets aria-modal to true.\n */\n @HostBinding('attr.aria-modal') ariaModal = true;\n\n private _ariaLabelledBy = null;\n\n /**\n * The aria-labelledby for the modal. This is set by the id of\n * {@link DaffModalTitleDirective} when it is used.\n *\n */\n @HostBinding('attr.aria-labelledby') get ariaLabelledBy() {\n return this._ariaLabelledBy;\n } set ariaLabelledBy(value: string) {\n this._ariaLabelledBy = value;\n }\n\n /**\n * Dictates whether or not a modal is open or closed.\n */\n @Input() open = false;\n\n /**\n * The CDK Portal outlet used to portal content into the modal.\n */\n @ViewChild(CdkPortalOutlet, { static: true }) private _portalOutlet: CdkPortalOutlet;\n\n /**\n * Event fired when the close animation is completed.\n */\n animationCompleted: EventEmitter<any> = new EventEmitter<any>();\n\n /**\n * Event fired when the close animation is completed.\n */\n closedAnimationCompleted: EventEmitter<any> = new EventEmitter<\n any\n >();\n\n /**\n * @docs-private\n */\n @HostListener('keydown.escape')\n onEscape() {\n this.modalService.close(this);\n }\n\n private _focusTrap: ConfigurableFocusTrap;\n\n constructor(\n private modalService: DaffModalService,\n private _focusTrapFactory: ConfigurableFocusTrapFactory,\n private _elementRef: ElementRef<HTMLElement>,\n ) {\n }\n\n ngAfterContentInit() {\n this._focusTrap = this._focusTrapFactory.create(\n\t this._elementRef.nativeElement,\n\t );\n }\n\n ngAfterViewInit() {\n const focusableChild = (<HTMLElement>this._elementRef.nativeElement.querySelector(\n daffFocusableElementsSelector)\n );\n\n if(focusableChild) {\n focusableChild.focus();\n } else {\n // There's a timing condition when computing HostBindings afterContentInit\n // so to allow the menu to be focused, we manually set the tabindex.\n this._elementRef.nativeElement.tabIndex = 0;\n (<HTMLElement>this._elementRef.nativeElement).focus();\n }\n }\n\n /**\n * Helper method to attach portable content to modal.\n */\n attachContent(portal: ComponentPortal<any>): any {\n const attachContent = this._portalOutlet.attachComponentPortal(portal);\n\n // When a component is created to inject content into the modal, it can\n // interfere with the display styles applied to the modal's header, content,\n // and action sections. By setting `display: contents;` on the custom\n // component, it is visually removed from the UI, allowing the content\n // within it to inherit the modal's styles.\n attachContent.location.nativeElement.style.display = 'contents';\n\n return attachContent;\n }\n\n /** Animation hook that controls the entrance and exit animations of the modal. */\n @HostBinding('@fade') get fadeState(): string {\n\t return getAnimationState(this.open);\n }\n\n /**\n * Animation event that can used to hook into when\n * animations are fully completed. We use this in the DaffModalService\n * to determine when to actually remove the dynamically rendered element from the DOM\n * so that the animation does not clip as the element is removed.\n */\n @HostListener('@fade.done', ['$event'])\n animationDone(e: AnimationEvent) {\n\t this.animationCompleted.emit(e);\n\t if (e.toState === 'closed') {\n\t this.closedAnimationCompleted.emit(e);\n\t }\n }\n}\n","<ng-template cdkPortalOutlet></ng-template>\n","import {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-modal-actions',\n template: '<ng-content></ng-content>',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffModalActionsComponent {\n @HostBinding('class.daff-modal-actions') class = true;\n}\n","import {\n Directive,\n HostBinding,\n HostListener,\n Optional,\n} from '@angular/core';\n\nimport { DaffModalComponent } from '../modal/modal.component';\nimport { DaffModalService } from '../service/modal.service';\n\n/**\n * The DaffModalCloseDirective is a helper directive that passes a click\n * event to the button it's used with to close a modal. It needs to be\n * implemented with the `<button>` HTML element to work. This helps to\n * reduce code duplication.\n */\n@Directive({\n selector: 'button[daffModalClose]',\n})\n\nexport class DaffModalCloseDirective {\n constructor(\n private modalService: DaffModalService,\n @Optional() private modal: DaffModalComponent,\n ) {}\n\n /**\n * Event fired when the button the directive is attached to is clicked. This is used to close a modal.\n */\n @HostListener('click')\n _onCloseModal(event: MouseEvent) {\n\t if(this.modal) {\n this.modalService.close(this.modal);\n }\n }\n\n /**\n * Sets the button type attribute to button.\n */\n @HostBinding('attr.type') typeAttribute = 'button';\n}\n","import {\n Component,\n ChangeDetectionStrategy,\n HostBinding,\n} from '@angular/core';\n\n@Component({\n selector: 'daff-modal-content',\n template: '<ng-content></ng-content>',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffModalContentComponent {\n @HostBinding('class.daff-modal-content') class = true;\n}\n","import {\n Component,\n ViewEncapsulation,\n HostBinding,\n ChangeDetectionStrategy,\n Input,\n} from '@angular/core';\nimport { faXmark } from '@fortawesome/free-solid-svg-icons';\n\n@Component({\n selector: 'daff-modal-header',\n templateUrl: './modal-header.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DaffModalHeaderComponent {\n faXmark = faXmark;\n\n /**\n * @docs-private\n */\n @HostBinding('class.daff-modal-header') class = true;\n\n /**\n * Whether or not a modal is dismissible.\n */\n @Input() dismissible = true;\n}\n","<ng-content select=\"[daffModalTitle]\"></ng-content>\n<ng-container *ngIf=\"dismissible\">\n\t<button daff-icon-button color=\"theme-contrast\"\n\t\tdaffModalClose\n\t\tclass=\"daff-modal-header__dismiss-button\"\n\t\taria-label=\"Close modal\">\n\t\t\t<fa-icon [icon]=\"faXmark\" size=\"lg\"></fa-icon>\n\t</button>\n</ng-container>","import {\n Directive,\n HostBinding,\n Optional,\n} from '@angular/core';\n\nimport { DaffModalComponent } from '../modal/modal.component';\n\nlet modalTitleId = 0;\n\n/**\n * Title of a modal.\n */\n@Directive({\n selector: '[daffModalTitle]',\n})\n\nexport class DaffModalTitleDirective {\n /**\n * @docs-private\n */\n @HostBinding('class.daff-modal-title') class = true;\n\n private _id = '';\n\n /**\n * The html `id` of the modal title.\n */\n @HostBinding('attr.id') get uniqueId() {\n return this._id;\n }\n\n constructor(@Optional() private modal: DaffModalComponent) {\n modalTitleId++;\n\n this._id = 'daff-modal-title-' + modalTitleId;\n\n /**\n * Sets the ariaLabelledBy of the modal to the id of the modal title.\n */\n if(this.modal) {\n this.modal.ariaLabelledBy = this.uniqueId;\n }\n }\n}\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\n\nimport { DaffButtonModule } from '@daffodil/design/button';\n\nimport { DaffModalComponent } from './modal/modal.component';\nimport { DaffModalActionsComponent } from './modal-actions/modal-actions.component';\nimport { DaffModalCloseDirective } from './modal-close/modal-close.directive';\nimport { DaffModalContentComponent } from './modal-content/modal-content.component';\nimport { DaffModalHeaderComponent } from './modal-header/modal-header.component';\nimport { DaffModalTitleDirective } from './modal-title/modal-title.directive';\nimport { DaffModalService } from './service/modal.service';\n\n@NgModule({\n imports: [\n CommonModule,\n PortalModule,\n OverlayModule,\n DaffButtonModule,\n FontAwesomeModule,\n ],\n exports: [\n DaffModalHeaderComponent,\n DaffModalTitleDirective,\n DaffModalContentComponent,\n DaffModalActionsComponent,\n DaffModalCloseDirective,\n ],\n declarations: [\n DaffModalComponent,\n DaffModalHeaderComponent,\n DaffModalTitleDirective,\n DaffModalContentComponent,\n DaffModalActionsComponent,\n DaffModalCloseDirective,\n ],\n providers: [\n DaffModalService,\n ],\n})\nexport class DaffModalModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.DaffModalService","i2.DaffModalComponent","i1","i2","i3","i4.DaffModalCloseDirective","i1.DaffModalComponent"],"mappings":"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"}
@@ -2,8 +2,8 @@ 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 } from '@angular/core';
6
- import { fromEvent } from 'rxjs';
5
+ import { EventEmitter, Component, ChangeDetectionStrategy, Inject, HostBinding, Output, Input, HostListener, Directive, ViewEncapsulation, InjectionToken, inject, ElementRef, SkipSelf, Optional, ContentChildren, NgModule, signal } from '@angular/core';
6
+ import { fromEvent, BehaviorSubject } from 'rxjs';
7
7
  import { filter } from 'rxjs/operators';
8
8
  import * as i2 from '@daffodil/design';
9
9
  import { daffFocusableElementsSelector } from '@daffodil/design';
@@ -687,7 +687,7 @@ class DaffSidebarViewportComponent {
687
687
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", 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
688
  /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", 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
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;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: [
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: [
691
691
  daffSidebarAnimations.transformContent,
692
692
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
693
693
  }
@@ -697,7 +697,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImpo
697
697
  daffSidebarAnimations.transformContent,
698
698
  ], providers: [
699
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;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"] }]
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"] }]
701
701
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: undefined, decorators: [{
702
702
  type: Inject,
703
703
  args: [DAFF_SIDEBAR_SCROLL_TOKEN]
@@ -775,9 +775,61 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImpo
775
775
  }]
776
776
  }] });
777
777
 
778
+ /**
779
+ * A service that stores the open state and ID of the currently opened sidebar.
780
+ *
781
+ * A default sidebar ID can be passed to the constructor that will be the initial value of `$id`.
782
+ */
783
+ class DaffSidebarService {
784
+ get isOpen() {
785
+ return this._open.asReadonly();
786
+ }
787
+ constructor(defaultId = null) {
788
+ this._open = signal(false);
789
+ this._id$ = new BehaviorSubject(defaultId);
790
+ this.id$ = this._id$.asObservable();
791
+ }
792
+ /**
793
+ * Opens the specified sidebar.
794
+ *
795
+ * @param id The optional sidebar ID. If omitted the most recently passed opened sidebar ID will persist (or the default if none was passed).
796
+ */
797
+ open(id) {
798
+ if (id) {
799
+ this._id$.next(id);
800
+ }
801
+ this._open.set(true);
802
+ }
803
+ ;
804
+ /**
805
+ * Closes the sidebar. Does not clear the ID.
806
+ */
807
+ close() {
808
+ this._open.set(false);
809
+ }
810
+ }
811
+
812
+ const DOCKED_MODES = [
813
+ "side" /* DaffSidebarModeEnum.Side */,
814
+ "side-fixed" /* DaffSidebarModeEnum.SideFixed */,
815
+ ];
816
+ /**
817
+ * Returns whether the passed mode is a docked mode, i.e. side or side-fixed.
818
+ */
819
+ const daffSidebarIsDockedMode = (mode) => DOCKED_MODES.includes(mode);
820
+
821
+ const FLOATING_MODES = [
822
+ "under" /* DaffSidebarModeEnum.Under */,
823
+ "over" /* DaffSidebarModeEnum.Over */,
824
+ ];
825
+ /**
826
+ * Returns whether the passed mode is a floating mode, i.e. under or over.
827
+ */
828
+ const daffSidebarIsFloatingMode = (mode) => FLOATING_MODES.includes(mode);
829
+
778
830
  /**
779
831
  * Generated bundle index. Do not edit.
780
832
  */
781
833
 
782
- export { DaffSidebarComponent, DaffSidebarFooterComponent, DaffSidebarHeaderActionDirective, DaffSidebarHeaderComponent, DaffSidebarHeaderTitleDirective, DaffSidebarModule, DaffSidebarViewportBackdropComponent, DaffSidebarViewportComponent };
834
+ export { DaffSidebarComponent, DaffSidebarFooterComponent, DaffSidebarHeaderActionDirective, DaffSidebarHeaderComponent, DaffSidebarHeaderTitleDirective, DaffSidebarModule, DaffSidebarService, DaffSidebarViewportBackdropComponent, DaffSidebarViewportComponent, daffSidebarIsDockedMode, daffSidebarIsFloatingMode };
783
835
  //# sourceMappingURL=daffodil-design-sidebar.mjs.map