@getflip/swirl-components 0.208.2 → 0.208.3

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 (119) hide show
  1. package/components.json +1 -1
  2. package/dist/cjs/swirl-action-list_3.cjs.entry.js +1 -1
  3. package/dist/cjs/swirl-app-layout_6.cjs.entry.js +13 -12
  4. package/dist/cjs/swirl-autocomplete.cjs.entry.js +1 -1
  5. package/dist/cjs/swirl-banner.cjs.entry.js +1 -1
  6. package/dist/cjs/swirl-button.cjs.entry.js +1 -1
  7. package/dist/cjs/swirl-carousel.cjs.entry.js +1 -1
  8. package/dist/cjs/swirl-chip.cjs.entry.js +1 -1
  9. package/dist/cjs/swirl-console-layout.cjs.entry.js +1 -1
  10. package/dist/cjs/swirl-date-input.cjs.entry.js +1 -1
  11. package/dist/cjs/swirl-date-picker_2.cjs.entry.js +1 -1
  12. package/dist/cjs/swirl-file-viewer_7.cjs.entry.js +1 -1
  13. package/dist/cjs/swirl-form-control.cjs.entry.js +1 -1
  14. package/dist/cjs/swirl-icon-check-small_3.cjs.entry.js +1 -1
  15. package/dist/cjs/swirl-icon-error_3.cjs.entry.js +1 -1
  16. package/dist/cjs/swirl-inline-status.cjs.entry.js +1 -1
  17. package/dist/cjs/swirl-lightbox.cjs.entry.js +1 -1
  18. package/dist/cjs/swirl-menu-item.cjs.entry.js +1 -1
  19. package/dist/cjs/swirl-menu.cjs.entry.js +1 -1
  20. package/dist/cjs/swirl-option-list_2.cjs.entry.js +1 -1
  21. package/dist/cjs/swirl-pagination.cjs.entry.js +1 -1
  22. package/dist/cjs/swirl-pdf-reader.cjs.entry.js +1 -1
  23. package/dist/cjs/swirl-popover_2.cjs.entry.js +1 -1
  24. package/dist/cjs/swirl-resource-list-file-item.cjs.entry.js +1 -1
  25. package/dist/cjs/swirl-search.cjs.entry.js +1 -1
  26. package/dist/cjs/swirl-select.cjs.entry.js +1 -1
  27. package/dist/cjs/swirl-shell-layout.cjs.entry.js +1 -1
  28. package/dist/cjs/swirl-table-column.cjs.entry.js +1 -1
  29. package/dist/cjs/swirl-table-row.cjs.entry.js +1 -1
  30. package/dist/cjs/swirl-table.cjs.entry.js +1 -1
  31. package/dist/cjs/swirl-text-input.cjs.entry.js +1 -1
  32. package/dist/cjs/swirl-time-input.cjs.entry.js +1 -1
  33. package/dist/cjs/swirl-toast.cjs.entry.js +1 -1
  34. package/dist/cjs/swirl-toolbar.cjs.entry.js +1 -1
  35. package/dist/cjs/{utils-fc5855ec.js → utils-c82e5573.js} +4 -0
  36. package/dist/collection/assets/pdfjs/pdf.worker.min.js +1 -1
  37. package/dist/collection/components/swirl-app-layout/swirl-app-layout.css +129 -0
  38. package/dist/collection/components/swirl-app-layout/swirl-app-layout.js +12 -11
  39. package/dist/collection/components/swirl-shell-layout/swirl-shell-layout.css +21 -0
  40. package/dist/collection/utils.js +3 -0
  41. package/dist/components/assets/pdfjs/pdf.worker.min.js +1 -1
  42. package/dist/components/swirl-app-layout2.js +13 -12
  43. package/dist/components/swirl-file-viewer-pdf2.js +1 -1
  44. package/dist/components/swirl-shell-layout.js +1 -1
  45. package/dist/components/utils.js +4 -1
  46. package/dist/esm/swirl-action-list_3.entry.js +1 -1
  47. package/dist/esm/swirl-app-layout_6.entry.js +13 -12
  48. package/dist/esm/swirl-autocomplete.entry.js +1 -1
  49. package/dist/esm/swirl-banner.entry.js +1 -1
  50. package/dist/esm/swirl-button.entry.js +1 -1
  51. package/dist/esm/swirl-carousel.entry.js +1 -1
  52. package/dist/esm/swirl-chip.entry.js +1 -1
  53. package/dist/esm/swirl-console-layout.entry.js +1 -1
  54. package/dist/esm/swirl-date-input.entry.js +1 -1
  55. package/dist/esm/swirl-date-picker_2.entry.js +1 -1
  56. package/dist/esm/swirl-file-viewer_7.entry.js +1 -1
  57. package/dist/esm/swirl-form-control.entry.js +1 -1
  58. package/dist/esm/swirl-icon-check-small_3.entry.js +1 -1
  59. package/dist/esm/swirl-icon-error_3.entry.js +1 -1
  60. package/dist/esm/swirl-inline-status.entry.js +1 -1
  61. package/dist/esm/swirl-lightbox.entry.js +1 -1
  62. package/dist/esm/swirl-menu-item.entry.js +1 -1
  63. package/dist/esm/swirl-menu.entry.js +1 -1
  64. package/dist/esm/swirl-option-list_2.entry.js +1 -1
  65. package/dist/esm/swirl-pagination.entry.js +1 -1
  66. package/dist/esm/swirl-pdf-reader.entry.js +1 -1
  67. package/dist/esm/swirl-popover_2.entry.js +1 -1
  68. package/dist/esm/swirl-resource-list-file-item.entry.js +1 -1
  69. package/dist/esm/swirl-search.entry.js +1 -1
  70. package/dist/esm/swirl-select.entry.js +1 -1
  71. package/dist/esm/swirl-shell-layout.entry.js +1 -1
  72. package/dist/esm/swirl-table-column.entry.js +1 -1
  73. package/dist/esm/swirl-table-row.entry.js +1 -1
  74. package/dist/esm/swirl-table.entry.js +1 -1
  75. package/dist/esm/swirl-text-input.entry.js +1 -1
  76. package/dist/esm/swirl-time-input.entry.js +1 -1
  77. package/dist/esm/swirl-toast.entry.js +1 -1
  78. package/dist/esm/swirl-toolbar.entry.js +1 -1
  79. package/dist/esm/{utils-aab10c80.js → utils-9b747dd7.js} +4 -1
  80. package/dist/swirl-components/{p-67ec1892.entry.js → p-002b7e52.entry.js} +1 -1
  81. package/dist/swirl-components/{p-ddbd3ba2.entry.js → p-0a75fb2c.entry.js} +1 -1
  82. package/dist/swirl-components/{p-f6d6e1b3.entry.js → p-12c1cc7d.entry.js} +1 -1
  83. package/dist/swirl-components/p-1d9f6e7b.entry.js +1 -0
  84. package/dist/swirl-components/{p-cafb3f89.entry.js → p-2016c6ab.entry.js} +1 -1
  85. package/dist/swirl-components/{p-923e0cab.entry.js → p-216668f0.entry.js} +1 -1
  86. package/dist/swirl-components/{p-b4b29c84.entry.js → p-35612ebd.entry.js} +1 -1
  87. package/dist/swirl-components/{p-957c6bfa.entry.js → p-4bccdf5c.entry.js} +1 -1
  88. package/dist/swirl-components/{p-8e6caf90.entry.js → p-4cab4855.entry.js} +1 -1
  89. package/dist/swirl-components/{p-fd807ae6.entry.js → p-4def436f.entry.js} +1 -1
  90. package/dist/swirl-components/{p-4cd0f4d9.entry.js → p-54defefa.entry.js} +1 -1
  91. package/dist/swirl-components/{p-02cc1990.entry.js → p-5625da01.entry.js} +1 -1
  92. package/dist/swirl-components/p-58abf3c6.js +1 -0
  93. package/dist/swirl-components/{p-38d2873f.entry.js → p-64af1828.entry.js} +1 -1
  94. package/dist/swirl-components/{p-5ebc8ac3.entry.js → p-6a2dfb36.entry.js} +1 -1
  95. package/dist/swirl-components/{p-63bb43c6.entry.js → p-6bb86ac6.entry.js} +1 -1
  96. package/dist/swirl-components/{p-3ca838d1.entry.js → p-6fff46e7.entry.js} +1 -1
  97. package/dist/swirl-components/{p-e60c1866.entry.js → p-847592fc.entry.js} +1 -1
  98. package/dist/swirl-components/{p-2cf55b68.entry.js → p-85103dcc.entry.js} +1 -1
  99. package/dist/swirl-components/{p-0bbd7d63.entry.js → p-882c7025.entry.js} +1 -1
  100. package/dist/swirl-components/{p-b50cde2f.entry.js → p-895ae6a9.entry.js} +1 -1
  101. package/dist/swirl-components/{p-f0f9e649.entry.js → p-a0775f91.entry.js} +1 -1
  102. package/dist/swirl-components/{p-8fd60b0e.entry.js → p-a60f0d9e.entry.js} +1 -1
  103. package/dist/swirl-components/{p-ac5aa422.entry.js → p-ad8c20b7.entry.js} +1 -1
  104. package/dist/swirl-components/{p-28087c13.entry.js → p-adf25c45.entry.js} +1 -1
  105. package/dist/swirl-components/p-b24e6ac7.entry.js +1 -0
  106. package/dist/swirl-components/{p-8b7fa285.entry.js → p-bcf38f06.entry.js} +1 -1
  107. package/dist/swirl-components/{p-9991892d.entry.js → p-c497d897.entry.js} +1 -1
  108. package/dist/swirl-components/{p-bcd510b8.entry.js → p-cadf6a32.entry.js} +1 -1
  109. package/dist/swirl-components/{p-a5b60e79.entry.js → p-d15c30a4.entry.js} +1 -1
  110. package/dist/swirl-components/{p-27aef8c4.entry.js → p-de6856c8.entry.js} +1 -1
  111. package/dist/swirl-components/{p-2e55fdaa.entry.js → p-f6d1648e.entry.js} +1 -1
  112. package/dist/swirl-components/{p-10019ad5.entry.js → p-f7532ba4.entry.js} +1 -1
  113. package/dist/swirl-components/{p-de2f3726.entry.js → p-f7e43e2f.entry.js} +1 -1
  114. package/dist/swirl-components/swirl-components.esm.js +1 -1
  115. package/dist/types/utils.d.ts +1 -0
  116. package/package.json +1 -1
  117. package/dist/swirl-components/p-2d79b467.entry.js +0 -1
  118. package/dist/swirl-components/p-4b826622.entry.js +0 -1
  119. package/dist/swirl-components/p-81ca5135.js +0 -1
@@ -91,12 +91,24 @@
91
91
  .app-layout--has-sidebar:not(.app-layout--has-navigation).app-layout--sidebar-active .app-layout__grid {
92
92
  animation: app-layout-no-nav-sidebar-slide-in 0.3s;
93
93
  }
94
+
95
+ @media (prefers-reduced-motion) {
96
+ .app-layout--has-sidebar:not(.app-layout--has-navigation).app-layout--sidebar-active .app-layout__grid {
97
+ animation: none
98
+ }
99
+ }
94
100
  }
95
101
 
96
102
  @media (min-width: 768px) {
97
103
  .app-layout--has-sidebar:not(.app-layout--has-navigation).app-layout--sidebar-closing .app-layout__grid {
98
104
  animation: app-layout-no-nav-sidebar-slide-out 0.3s;
99
105
  }
106
+
107
+ @media (prefers-reduced-motion) {
108
+ .app-layout--has-sidebar:not(.app-layout--has-navigation).app-layout--sidebar-closing .app-layout__grid {
109
+ animation: none
110
+ }
111
+ }
100
112
  }
101
113
 
102
114
  @media (min-width: 768px) {
@@ -123,12 +135,24 @@
123
135
  "header body sidebar"
124
136
  "navigation body sidebar";
125
137
  }
138
+
139
+ @media (prefers-reduced-motion) {
140
+ .app-layout--has-navigation.app-layout--has-sidebar.app-layout--sidebar-active .app-layout__grid {
141
+ animation: none
142
+ }
143
+ }
126
144
  }
127
145
 
128
146
  @media (min-width: 1800px) {
129
147
  .app-layout--has-navigation.app-layout--has-sidebar.app-layout--sidebar-closing .app-layout__grid {
130
148
  animation: app-layout-sidebar-slide-out 0.3s;
131
149
  }
150
+
151
+ @media (prefers-reduced-motion) {
152
+ .app-layout--has-navigation.app-layout--has-sidebar.app-layout--sidebar-closing .app-layout__grid {
153
+ animation: none
154
+ }
155
+ }
132
156
  }
133
157
 
134
158
  @media (min-width: 768px) {
@@ -217,6 +241,13 @@
217
241
  .app-layout--sidebar-closing .app-layout__sidebar {
218
242
  animation: app-layout-sidebar-overlay-slide-out 0.3s
219
243
  }
244
+
245
+ @media (prefers-reduced-motion) {
246
+
247
+ .app-layout--sidebar-closing .app-layout__sidebar {
248
+ animation: none
249
+ }
250
+ }
220
251
  }
221
252
 
222
253
  @media (min-width: 1800px) {
@@ -449,6 +480,13 @@
449
480
  .app-layout__sidebar {
450
481
  animation: app-layout-slide-in 0.3s
451
482
  }
483
+
484
+ @media (prefers-reduced-motion) {
485
+
486
+ .app-layout__sidebar {
487
+ animation: none
488
+ }
489
+ }
452
490
  }
453
491
 
454
492
  @media (min-width: 1800px) {
@@ -609,6 +647,23 @@
609
647
  animation: app-layout-slide-out 0.4s;
610
648
  }
611
649
 
650
+ @media (prefers-reduced-motion) {
651
+ .app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(
652
+ .app-layout--mobile-view-body
653
+ ) .app-layout__header,
654
+ .app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(
655
+ .app-layout--mobile-view-body
656
+ ) .app-layout__navigation,
657
+ .app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(
658
+ .app-layout--mobile-view-navigation
659
+ ) .app-layout__header,
660
+ .app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(
661
+ .app-layout--mobile-view-navigation
662
+ ) .app-layout__navigation {
663
+ animation: none
664
+ }
665
+ }
666
+
612
667
  .app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(
613
668
  .app-layout--mobile-view-body
614
669
  ) .app-layout__body, .app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(
@@ -617,6 +672,17 @@
617
672
  animation: app-layout-slide-in 0.4s;
618
673
  }
619
674
 
675
+ @media (prefers-reduced-motion) {
676
+
677
+ .app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(
678
+ .app-layout--mobile-view-body
679
+ ) .app-layout__body, .app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(
680
+ .app-layout--mobile-view-navigation
681
+ ) .app-layout__body {
682
+ animation: none
683
+ }
684
+ }
685
+
620
686
  .app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(
621
687
  .app-layout--mobile-view-body
622
688
  ) .app-layout__body:after, .app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(
@@ -632,6 +698,17 @@
632
698
  content: "";
633
699
  animation: app-layout-fade-in 0.4s;
634
700
  }
701
+
702
+ @media (prefers-reduced-motion) {
703
+
704
+ .app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(
705
+ .app-layout--mobile-view-body
706
+ ) .app-layout__body:after, .app-layout--transition-style-slides.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(
707
+ .app-layout--mobile-view-navigation
708
+ ) .app-layout__body:after {
709
+ animation: none
710
+ }
711
+ }
635
712
  }
636
713
 
637
714
  @media (max-width: 767px) {
@@ -669,6 +746,16 @@
669
746
  animation: app-layout-slide-out 0.4s;
670
747
  }
671
748
 
749
+ @media (prefers-reduced-motion) {
750
+ .app-layout--transition-style-slides.app-layout--transitioning-to-sidebar.app-layout--transitioning-from-body:not(
751
+ .app-layout--mobile-view-sidebar
752
+ ) .app-layout__body, .app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(
753
+ .app-layout--mobile-view-body
754
+ ) .app-layout__body {
755
+ animation: none
756
+ }
757
+ }
758
+
672
759
  .app-layout--transition-style-slides.app-layout--transitioning-to-sidebar.app-layout--transitioning-from-body:not(
673
760
  .app-layout--mobile-view-sidebar
674
761
  ) .app-layout__sidebar, .app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(
@@ -677,6 +764,17 @@
677
764
  animation: app-layout-slide-in 0.4s;
678
765
  }
679
766
 
767
+ @media (prefers-reduced-motion) {
768
+
769
+ .app-layout--transition-style-slides.app-layout--transitioning-to-sidebar.app-layout--transitioning-from-body:not(
770
+ .app-layout--mobile-view-sidebar
771
+ ) .app-layout__sidebar, .app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(
772
+ .app-layout--mobile-view-body
773
+ ) .app-layout__sidebar {
774
+ animation: none
775
+ }
776
+ }
777
+
680
778
  .app-layout--transition-style-slides.app-layout--transitioning-to-sidebar.app-layout--transitioning-from-body:not(
681
779
  .app-layout--mobile-view-sidebar
682
780
  ) .app-layout__sidebar:after, .app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(
@@ -692,6 +790,17 @@
692
790
  content: "";
693
791
  animation: app-layout-fade-in 0.4s;
694
792
  }
793
+
794
+ @media (prefers-reduced-motion) {
795
+
796
+ .app-layout--transition-style-slides.app-layout--transitioning-to-sidebar.app-layout--transitioning-from-body:not(
797
+ .app-layout--mobile-view-sidebar
798
+ ) .app-layout__sidebar:after, .app-layout--transition-style-slides.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(
799
+ .app-layout--mobile-view-body
800
+ ) .app-layout__sidebar:after {
801
+ animation: none
802
+ }
803
+ }
695
804
  }
696
805
 
697
806
  @media (max-width: 991px) {
@@ -724,6 +833,16 @@
724
833
  ) .app-layout__body {
725
834
  animation: app-layout-scale-in 0.3s;
726
835
  }
836
+
837
+ @media (prefers-reduced-motion) {
838
+ .app-layout--transition-style-dialog.app-layout--transitioning-to-body.app-layout--transitioning-from-navigation:not(
839
+ .app-layout--mobile-view-body
840
+ ) .app-layout__body, .app-layout--transition-style-dialog.app-layout--transitioning-to-navigation.app-layout--transitioning-from-body:not(
841
+ .app-layout--mobile-view-navigation
842
+ ) .app-layout__body {
843
+ animation: none
844
+ }
845
+ }
727
846
  }
728
847
 
729
848
  @media (max-width: 767px) {
@@ -754,6 +873,16 @@
754
873
  ) .app-layout__sidebar {
755
874
  animation: app-layout-scale-in 0.3s;
756
875
  }
876
+
877
+ @media (prefers-reduced-motion) {
878
+ .app-layout--transition-style-dialog.app-layout--transitioning-to-sidebar.app-layout--transitioning-from-body:not(
879
+ .app-layout--mobile-view-sidebar
880
+ ) .app-layout__sidebar, .app-layout--transition-style-dialog.app-layout--transitioning-to-body.app-layout--transitioning-from-sidebar:not(
881
+ .app-layout--mobile-view-body
882
+ ) .app-layout__sidebar {
883
+ animation: none
884
+ }
885
+ }
757
886
  }
758
887
 
759
888
  @media (max-width: 991px) {
@@ -1,6 +1,6 @@
1
1
  import { h, Host, } from "@stencil/core";
2
2
  import classnames from "classnames";
3
- import { isMobileViewport } from "../../utils";
3
+ import { isMobileViewport, prefersReducedMotion } from "../../utils";
4
4
  /**
5
5
  * @slot content - Main content area
6
6
  * @slot navigation - The navigation area content
@@ -91,7 +91,7 @@ export class SwirlAppLayout {
91
91
  clearTimeout(this.sidebarClosingTimeout);
92
92
  }
93
93
  this.sidebarClosing = true;
94
- const delay = isMobileViewport() ? 0 : 300;
94
+ const delay = isMobileViewport() || prefersReducedMotion() ? 0 : 300;
95
95
  this.sidebarClosingTimeout = setTimeout(() => {
96
96
  this.sidebarActive = false;
97
97
  this.sidebarClosing = false;
@@ -134,13 +134,14 @@ export class SwirlAppLayout {
134
134
  }
135
135
  this.transitioningFrom = this.mobileView;
136
136
  this.transitioningTo = mobileView;
137
- let delay = 0;
138
- if (this.transitionStyle === "slides") {
139
- delay = 400;
140
- }
141
- else if (this.transitionStyle === "dialog") {
142
- delay = 300;
143
- }
137
+ const userPrefersReducedMotion = prefersReducedMotion();
138
+ const delay = userPrefersReducedMotion
139
+ ? 0
140
+ : this.transitionStyle === "slides"
141
+ ? 400
142
+ : this.transitionStyle === "dialog"
143
+ ? 300
144
+ : 0;
144
145
  this.transitionTimeout = setTimeout(() => {
145
146
  this.mobileView = mobileView;
146
147
  this.transitioningFrom = undefined;
@@ -197,9 +198,9 @@ export class SwirlAppLayout {
197
198
  "app-layout--sidebar-active": this.mobileView === "sidebar" || this.sidebarActive,
198
199
  "app-layout--sidebar-closing": this.sidebarClosing,
199
200
  });
200
- return (h(Host, { key: '6d961491aca6930666b7d587789eb3bff6bf1e2d' }, h("section", { key: 'e34654e362f28c3a57aa4716a3a10a86909d9aa8', "aria-labelledby": "app-name", class: className }, h("div", { key: '3e6cc02c9c3701e195a8a92f97f2fa49be7a5325', class: "app-layout__grid" }, h("header", { key: '7b4b7743aa9225c591f05705f18d50bd3009bfff', class: "app-layout__header" }, h("span", { key: '18050ae2d54fd438da16a6df7a57ecd80fac35a6', class: "app-layout__navigation-mobile-menu-button" }, h("slot", { key: '2a4a8d6f30c2e5e02ab512ff2be09197ea61c68c', name: "navigation-mobile-menu-button" })), this.showNavigationBackButton && (h("span", { key: 'c461ab4bd9f6f116cd6c019c0e967633946f0a5c', class: "app-layout__navigation-back-button" }, h("swirl-button", { key: '94a59959334c405d871b9d89b7d72c25a644571c', hideLabel: true, icon: "<swirl-icon-arrow-back></swirl-icon-arrow-back>", label: this.navigationBackButtonLabel, onClick: this.onNavigationBackButtonClick }))), h("swirl-heading", { key: 'f5fd24b0ad24656831b66da8c024df6d1f5c62a6', as: "h1", class: "app-layout__app-name", headingId: "app-name", level: 3, text: this.appName }), this.hasNavigation && (h("span", { key: '04a2d228a04980e946b2d764bf1783a7c75a8e2f', class: "app-layout__navigation-controls" }, h("slot", { key: '1850db373293226330e64f6c45cb6d2b1792b6fe', name: "navigation-controls" })))), h("nav", { key: 'f90677d445f076e80615a73265e1abf5fd206821', "aria-label": this.navigationLabel, class: "app-layout__navigation" }, h("slot", { key: '1342aa7f9766d8bc7f5ceff39ae14b407871ba5b', name: "navigation" })), h("section", { key: '54bbd47bd318cf77ccfeee3ca0176504928d6c62', "aria-labelledby": "app-name", class: "app-layout__body" }, !this.hideAppBar && (h("header", { key: '6861a37fd4fbafcf4389f9df561abc1010fe94b8', class: "app-layout__app-bar" }, h("span", { key: 'e92f067fbf50cca7931213bc75cf195210d5cd29', class: "app-layout__app-bar-mobile-menu-button" }, h("slot", { key: '37c85dcf2fa77c37ea3aef4537c313ac14eb9ad9', name: "app-bar-mobile-menu-button" })), showBackToNavigationButton && (h("span", { key: 'a647140e357d1099774c239dbdb0c486aeedc74e', class: "app-layout__back-to-navigation-button" }, h("swirl-button", { key: '86b0502d617c12fb7123ef81c46126cc5ea18fca', hideLabel: true, icon: this.transitionStyle === "dialog"
201
+ return (h(Host, { key: '6e7b1fb8e820c5df6bddc4a07d568aba44c78fc2' }, h("section", { key: 'e2523a00678f76d23765be5f5245ed8ef36b772b', "aria-labelledby": "app-name", class: className }, h("div", { key: '0a35883504693d22196086d2d192df940695ab3d', class: "app-layout__grid" }, h("header", { key: '595cf6137de3f8c55aae7821e9b3be35ec8fb3e0', class: "app-layout__header" }, h("span", { key: '2f811e9f81706e9b7bee4f931d67b2bc6a9df600', class: "app-layout__navigation-mobile-menu-button" }, h("slot", { key: '661c053d500eaa9d3cd536a7be538ace1819df49', name: "navigation-mobile-menu-button" })), this.showNavigationBackButton && (h("span", { key: 'b955c5f227aca005c02679104943586bb237f88b', class: "app-layout__navigation-back-button" }, h("swirl-button", { key: 'e313c403f96cc6e67de6eeb5db8453294b218e91', hideLabel: true, icon: "<swirl-icon-arrow-back></swirl-icon-arrow-back>", label: this.navigationBackButtonLabel, onClick: this.onNavigationBackButtonClick }))), h("swirl-heading", { key: '22e232563638cf73c3e6297142de6574442ecaee', as: "h1", class: "app-layout__app-name", headingId: "app-name", level: 3, text: this.appName }), this.hasNavigation && (h("span", { key: '77a7f997eb95020d5e70699fa0713e40efcbc7b4', class: "app-layout__navigation-controls" }, h("slot", { key: '0b9658989e188b7d35dc0f4a27d19d343c1918d2', name: "navigation-controls" })))), h("nav", { key: 'd238f90f3b05de555b954290aaf1146d196657d6', "aria-label": this.navigationLabel, class: "app-layout__navigation" }, h("slot", { key: 'bbdc977904503ca4114b621ecd93934c2334108b', name: "navigation" })), h("section", { key: 'b48132a8158191263dd7c2a67b8c2a9b00af76fc', "aria-labelledby": "app-name", class: "app-layout__body" }, !this.hideAppBar && (h("header", { key: 'c611663c10529f62b04ec98f6fba52fb06a0231e', class: "app-layout__app-bar" }, h("span", { key: 'f0268dd8cb7839e76f734d52c848f9fed8822b26', class: "app-layout__app-bar-mobile-menu-button" }, h("slot", { key: 'b2e3c55f74dfb6bbc77df0c5e75fb05840aa3d2d', name: "app-bar-mobile-menu-button" })), showBackToNavigationButton && (h("span", { key: 'ffe44556d2f26ab36634443e579323917082db4c', class: "app-layout__back-to-navigation-button" }, h("swirl-button", { key: '332f83cd0a7c9a9ff6c7b87e928826e586e9a0c3', hideLabel: true, icon: this.transitionStyle === "dialog"
201
202
  ? "<swirl-icon-close></swirl-icon-close>"
202
- : "<swirl-icon-arrow-back></swirl-icon-arrow-back>", label: this.backToNavigationViewButtonLabel, onClick: this.onBackToNavigationViewButtonClick }))), h("span", { key: '0d1bef25d834457390cc3f1e8a16af30ee8ec411', class: "app-layout__custom-app-bar-back-button" }, h("slot", { key: 'ef609f9b32db88320c940927939b2bd3f87a28e5', name: "custom-app-bar-back-button" })), h("div", { key: 'd885bbea33f0c6b046e8cd574f61623e3b7cc225', class: "app-layout__app-bar-content" }, h("slot", { key: '70189b7672d8b70f490c3efdfde15d82c0b5c48c', name: "app-bar" })), h("div", { key: '23b3747628acc4fd2c61ee54de55253a3fc41203', class: "app-layout__app-bar-controls" }, h("slot", { key: '1bb20b112b186544833b10d3f67d48b002773bbc', name: "app-bar-controls" })))), h("div", { key: '33bad47951b64672f1f838b96d51e7e9f9d7c832', class: "app-layout__banner" }, h("slot", { key: 'e59682438a1d7aaec36e143c0c07d69a2205a24f', name: "banner" })), h("div", { key: '322eab095e9bf9d01f331adccdcd8953fcfa9fd0', class: "app-layout__content" }, h("slot", { key: '259690ee199cdc0ac3d037733b54544ea2b483ee', name: "content" })), h("div", { key: '7495427d0a523a22268c19c4ae56c977b4e295d0', class: "app-layout__bottom-bar" }, h("slot", { key: '50cc7202f5bbec17324ca23378617831d9fc199d', name: "bottom-bar" }))), h("aside", { key: '781981ef566aa8717d94331549272e7b9d2eeb6a', class: "app-layout__sidebar" }, h("header", { key: 'e6df1707394682f125448c1cf770600539bb1cfa', class: "app-layout__custom-sidebar-header" }, h("slot", { key: '6e6187ae87c94d9c2a2e7e6f573a384dcea43125', name: "custom-sidebar-header" })), h("header", { key: '7d9a21343c070d3a9aeea9236852be1a2cb12e1e', class: "app-layout__sidebar-header" }, h("swirl-button", { key: '6f4a53a16176d30139d497f4b510586f3bef2252', class: "app-layout__sidebar-close-button", hideLabel: true, icon: "<swirl-icon-close></swirl-icon-close>", label: this.sidebarCloseButtonLabel, onClick: this.onSidebarCloseButtonClick }), h("swirl-heading", { key: '6b32dc32a6844cfd258d0148a949f06fa86a222b', as: "h3", class: "app-layout__sidebar-heading", headingId: "sidebar-heading", level: 3, text: this.sidebarHeading })), h("div", { key: '64914275c88e1843af23ad087774d48092c70a36', class: "app-layout__sidebar-content" }, h("slot", { key: 'c6667fcf5d7702704752360854d9181d8ff35652', name: "sidebar" }))), h("span", { key: '7b8347d1a450aaed9c2e31ae1f308f46a760227b', class: "app-layout__floating-action-button" }, this.ctaLabel && (h("swirl-button", { key: '62393818e2205700c6b090dee8783049f95c747c', hideLabel: Boolean(this.ctaIcon), icon: this.ctaIcon, intent: "primary", label: this.ctaLabel, onClick: this.onCtaClick, variant: "floating" })), h("slot", { key: '32708bdfa2a5a36fbc7cd79bf0012bbf1928db68', name: "floating-action-button" }))))));
203
+ : "<swirl-icon-arrow-back></swirl-icon-arrow-back>", label: this.backToNavigationViewButtonLabel, onClick: this.onBackToNavigationViewButtonClick }))), h("span", { key: '05c553b3f06acb416efb611393a142375615aafb', class: "app-layout__custom-app-bar-back-button" }, h("slot", { key: '384efd3c0b8b1931c1386f79cc726e7cfd447a59', name: "custom-app-bar-back-button" })), h("div", { key: '525fcbc43fba00f2529ba87c1c4086a5835015c2', class: "app-layout__app-bar-content" }, h("slot", { key: '60f6b0c5ec6ffd68c93522863466bd6b3c0db363', name: "app-bar" })), h("div", { key: '87ec7fe96353196b906e44c6361751584ba6fc9e', class: "app-layout__app-bar-controls" }, h("slot", { key: '79ebad5cf6ce6dff917c3902690f90ede110395a', name: "app-bar-controls" })))), h("div", { key: '69708a765e8d144a33e39752c12c205ea68c28ce', class: "app-layout__banner" }, h("slot", { key: '44c74227806acf3d6367ea373698fcda7fb8d06c', name: "banner" })), h("div", { key: 'f06ccbce3e86d8b5923cb299e09a271013a7c1b1', class: "app-layout__content" }, h("slot", { key: 'a82bfde80fc6deef3652b3b7fe253907d970ecf7', name: "content" })), h("div", { key: 'd803093908c6fc820c3e2f38f8b065272c9844b9', class: "app-layout__bottom-bar" }, h("slot", { key: '6f89842c944a309fd080d91a6fc462b178b63a3f', name: "bottom-bar" }))), h("aside", { key: 'bab9d428055b9c20f46b850f83c12964d72b5bf4', class: "app-layout__sidebar" }, h("header", { key: 'c71437f69b01dd11660d3bbd2f3d3c7a41ab2f56', class: "app-layout__custom-sidebar-header" }, h("slot", { key: 'aa44cad222053bdb8ee7fb1819bc2152a4d0c878', name: "custom-sidebar-header" })), h("header", { key: 'a81e3b7a9b6471d39edf5d6c8764bc20020cd22b', class: "app-layout__sidebar-header" }, h("swirl-button", { key: 'ee62ccd13ed77be1a0c9c6f6ced052c2f2af1035', class: "app-layout__sidebar-close-button", hideLabel: true, icon: "<swirl-icon-close></swirl-icon-close>", label: this.sidebarCloseButtonLabel, onClick: this.onSidebarCloseButtonClick }), h("swirl-heading", { key: 'cd381a558de158ada2958e9cbd76c106ef51481b', as: "h3", class: "app-layout__sidebar-heading", headingId: "sidebar-heading", level: 3, text: this.sidebarHeading })), h("div", { key: '52c7f14a9bf4db580c1435b2f21e45a17fd22aed', class: "app-layout__sidebar-content" }, h("slot", { key: 'abcc082e929aecf20d08427cea0a6a6a59a4b547', name: "sidebar" }))), h("span", { key: 'e79fc4b23a6bd62249eead44136b52393b9134d6', class: "app-layout__floating-action-button" }, this.ctaLabel && (h("swirl-button", { key: 'e7b751e38f923ca8ca83c88baab521abad426cd2', hideLabel: Boolean(this.ctaIcon), icon: this.ctaIcon, intent: "primary", label: this.ctaLabel, onClick: this.onCtaClick, variant: "floating" })), h("slot", { key: '4e18e70ef2a91504e97ee9ad728e6cdca208debc', name: "floating-action-button" }))))));
203
204
  }
204
205
  static get is() { return "swirl-app-layout"; }
205
206
  static get encapsulation() { return "shadow"; }
@@ -29,6 +29,13 @@
29
29
  grid-template-areas: "nav main";
30
30
  }
31
31
 
32
+ @media (prefers-reduced-motion) {
33
+
34
+ .shell-layout {
35
+ transition: none
36
+ }
37
+ }
38
+
32
39
  @media (min-width: 992px) {
33
40
 
34
41
  .shell-layout {
@@ -309,6 +316,13 @@
309
316
  grid-area: nav;
310
317
  }
311
318
 
319
+ @media (prefers-reduced-motion) {
320
+
321
+ .shell-layout__nav {
322
+ transition: none
323
+ }
324
+ }
325
+
312
326
  @media (min-width: 992px) {
313
327
 
314
328
  .shell-layout__nav {
@@ -460,6 +474,13 @@
460
474
  }
461
475
  }
462
476
 
477
+ @media (prefers-reduced-motion) {
478
+
479
+ .shell-layout__sidebar-body {
480
+ transition: none
481
+ }
482
+ }
483
+
463
484
  .shell-layout__sidebar-app-bar {
464
485
  flex-grow: 0;
465
486
  flex-shrink: 0;
@@ -136,6 +136,9 @@ export function getVisibleHeight(element, container) {
136
136
  export function isMobileViewport() {
137
137
  return !window.matchMedia("(min-width: 768px)").matches;
138
138
  }
139
+ export function prefersReducedMotion() {
140
+ return window.matchMedia("(prefers-reduced-motion: reduce)").matches;
141
+ }
139
142
  export function parentsPassShadow(node, selector, matches = []) {
140
143
  if (!node) {
141
144
  return matches;