@skyux/layout 5.7.2 → 6.0.0-beta.2

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 (289) hide show
  1. package/documentation.json +4 -4
  2. package/esm2020/index.mjs +74 -0
  3. package/esm2020/lib/modules/action-button/action-button-adapter-service.mjs +43 -0
  4. package/esm2020/lib/modules/action-button/action-button-container.component.mjs +139 -0
  5. package/esm2020/lib/modules/action-button/action-button-details.component.mjs +14 -0
  6. package/esm2020/lib/modules/action-button/action-button-header.component.mjs +15 -0
  7. package/esm2020/lib/modules/action-button/action-button-icon.component.mjs +40 -0
  8. package/esm2020/lib/modules/action-button/action-button-permalink.mjs +2 -0
  9. package/esm2020/lib/modules/action-button/action-button.component.mjs +34 -0
  10. package/esm2020/lib/modules/action-button/action-button.module.mjs +62 -0
  11. package/esm2020/lib/modules/action-button/types/action-button-container-align-items-type.mjs +2 -0
  12. package/esm2020/lib/modules/action-button/types/action-button-container-align-items.mjs +2 -0
  13. package/esm2020/lib/modules/back-to-top/back-to-top-adapter.service.mjs +84 -0
  14. package/esm2020/lib/modules/back-to-top/back-to-top.component.mjs +26 -0
  15. package/esm2020/lib/modules/back-to-top/back-to-top.directive.mjs +114 -0
  16. package/esm2020/lib/modules/back-to-top/back-to-top.module.mjs +35 -0
  17. package/esm2020/lib/modules/back-to-top/models/back-to-top-message-type.mjs +11 -0
  18. package/esm2020/lib/modules/back-to-top/models/back-to-top-message.mjs +2 -0
  19. package/esm2020/lib/modules/back-to-top/models/back-to-top-options.mjs +2 -0
  20. package/esm2020/lib/modules/box/box-content.component.mjs +15 -0
  21. package/esm2020/lib/modules/box/box-controls.component.mjs +14 -0
  22. package/esm2020/lib/modules/box/box-header.component.mjs +14 -0
  23. package/esm2020/lib/modules/box/box.component.mjs +21 -0
  24. package/esm2020/lib/modules/box/box.module.mjs +38 -0
  25. package/esm2020/lib/modules/card/card-actions.component.mjs +14 -0
  26. package/esm2020/lib/modules/card/card-content.component.mjs +14 -0
  27. package/esm2020/lib/modules/card/card-title.component.mjs +14 -0
  28. package/esm2020/lib/modules/card/card.component.mjs +75 -0
  29. package/esm2020/lib/modules/card/card.module.mjs +61 -0
  30. package/esm2020/lib/modules/definition-list/definition-list-content.component.mjs +14 -0
  31. package/esm2020/lib/modules/definition-list/definition-list-heading.component.mjs +14 -0
  32. package/esm2020/lib/modules/definition-list/definition-list-label.component.mjs +20 -0
  33. package/esm2020/lib/modules/definition-list/definition-list-value.component.mjs +21 -0
  34. package/esm2020/lib/modules/definition-list/definition-list.component.mjs +38 -0
  35. package/esm2020/lib/modules/definition-list/definition-list.module.mjs +44 -0
  36. package/esm2020/lib/modules/definition-list/definition-list.service.mjs +18 -0
  37. package/esm2020/lib/modules/description-list/description-list-adapter-service.mjs +43 -0
  38. package/esm2020/lib/modules/description-list/description-list-content.component.mjs +22 -0
  39. package/esm2020/lib/modules/description-list/description-list-description.component.mjs +49 -0
  40. package/esm2020/lib/modules/description-list/description-list-term.component.mjs +20 -0
  41. package/esm2020/lib/modules/description-list/description-list.component.mjs +101 -0
  42. package/esm2020/lib/modules/description-list/description-list.module.mjs +53 -0
  43. package/esm2020/lib/modules/description-list/description-list.service.mjs +26 -0
  44. package/esm2020/lib/modules/description-list/types/description-list-mode-type.mjs +2 -0
  45. package/esm2020/lib/modules/description-list/types/description-list-mode.mjs +24 -0
  46. package/esm2020/lib/modules/fluid-grid/column.component.mjs +53 -0
  47. package/esm2020/lib/modules/fluid-grid/fluid-grid-gutter-size.mjs +20 -0
  48. package/esm2020/lib/modules/fluid-grid/fluid-grid.component.mjs +62 -0
  49. package/esm2020/lib/modules/fluid-grid/fluid-grid.module.mjs +20 -0
  50. package/esm2020/lib/modules/fluid-grid/row.component.mjs +25 -0
  51. package/esm2020/lib/modules/fluid-grid/types/fluid-grid-gutter-size-type.mjs +2 -0
  52. package/esm2020/lib/modules/format/format-item.mjs +2 -0
  53. package/esm2020/lib/modules/format/format.component.mjs +59 -0
  54. package/esm2020/lib/modules/format/format.module.mjs +18 -0
  55. package/esm2020/lib/modules/inline-delete/inline-delete-adapter.service.mjs +115 -0
  56. package/esm2020/lib/modules/inline-delete/inline-delete-type.mjs +16 -0
  57. package/esm2020/lib/modules/inline-delete/inline-delete.component.mjs +161 -0
  58. package/esm2020/lib/modules/inline-delete/inline-delete.module.mjs +34 -0
  59. package/esm2020/lib/modules/page/page-theme-adapter.service.mjs +26 -0
  60. package/esm2020/lib/modules/page/page.component.mjs +27 -0
  61. package/esm2020/lib/modules/page/page.module.mjs +16 -0
  62. package/esm2020/lib/modules/page-summary/page-summary-adapter.service.mjs +23 -0
  63. package/esm2020/lib/modules/page-summary/page-summary-alert.component.mjs +17 -0
  64. package/esm2020/lib/modules/page-summary/page-summary-content.component.mjs +16 -0
  65. package/esm2020/lib/modules/page-summary/page-summary-image.component.mjs +17 -0
  66. package/esm2020/lib/modules/page-summary/page-summary-key-info.component.mjs +15 -0
  67. package/esm2020/lib/modules/page-summary/page-summary-status.component.mjs +17 -0
  68. package/esm2020/lib/modules/page-summary/page-summary-subtitle.component.mjs +16 -0
  69. package/esm2020/lib/modules/page-summary/page-summary-title.component.mjs +16 -0
  70. package/esm2020/lib/modules/page-summary/page-summary.component.mjs +45 -0
  71. package/esm2020/lib/modules/page-summary/page-summary.module.mjs +57 -0
  72. package/esm2020/lib/modules/shared/sky-layout-resources.module.mjs +60 -0
  73. package/esm2020/lib/modules/text-expand/text-expand-adapter.service.mjs +31 -0
  74. package/esm2020/lib/modules/text-expand/text-expand-modal-context.mjs +6 -0
  75. package/esm2020/lib/modules/text-expand/text-expand-modal.component.mjs +26 -0
  76. package/esm2020/lib/modules/text-expand/text-expand.component.mjs +247 -0
  77. package/esm2020/lib/modules/text-expand/text-expand.module.mjs +35 -0
  78. package/esm2020/lib/modules/text-expand-repeater/text-expand-repeater-adapter.service.mjs +37 -0
  79. package/esm2020/lib/modules/text-expand-repeater/text-expand-repeater.component.mjs +171 -0
  80. package/esm2020/lib/modules/text-expand-repeater/text-expand-repeater.module.mjs +20 -0
  81. package/esm2020/lib/modules/text-expand-repeater/types/text-expand-repeater-list-style-type.mjs +2 -0
  82. package/esm2020/lib/modules/toolbar/toolbar-item.component.mjs +14 -0
  83. package/esm2020/lib/modules/toolbar/toolbar-section.component.mjs +14 -0
  84. package/esm2020/lib/modules/toolbar/toolbar-view-actions.component.mjs +15 -0
  85. package/esm2020/lib/modules/toolbar/toolbar.component.mjs +25 -0
  86. package/esm2020/lib/modules/toolbar/toolbar.module.mjs +37 -0
  87. package/esm2020/skyux-layout.mjs +5 -0
  88. package/esm2020/testing/action-button-fixture.mjs +44 -0
  89. package/esm2020/testing/card-fixture.mjs +63 -0
  90. package/esm2020/testing/page-summary-fixture.mjs +29 -0
  91. package/esm2020/testing/public-api.mjs +4 -0
  92. package/esm2020/testing/skyux-layout-testing.mjs +5 -0
  93. package/fesm2015/{skyux-layout-testing.js → skyux-layout-testing.mjs} +1 -1
  94. package/fesm2015/skyux-layout-testing.mjs.map +1 -0
  95. package/fesm2015/skyux-layout.mjs +2724 -0
  96. package/fesm2015/skyux-layout.mjs.map +1 -0
  97. package/fesm2020/skyux-layout-testing.mjs +139 -0
  98. package/fesm2020/skyux-layout-testing.mjs.map +1 -0
  99. package/fesm2020/skyux-layout.mjs +2722 -0
  100. package/fesm2020/skyux-layout.mjs.map +1 -0
  101. package/package.json +45 -21
  102. package/testing/package.json +5 -5
  103. package/bundles/skyux-layout-testing.umd.js +0 -191
  104. package/bundles/skyux-layout.umd.js +0 -3570
  105. package/esm2015/index.js +0 -74
  106. package/esm2015/index.js.map +0 -1
  107. package/esm2015/lib/modules/action-button/action-button-adapter-service.js +0 -43
  108. package/esm2015/lib/modules/action-button/action-button-adapter-service.js.map +0 -1
  109. package/esm2015/lib/modules/action-button/action-button-container.component.js +0 -145
  110. package/esm2015/lib/modules/action-button/action-button-container.component.js.map +0 -1
  111. package/esm2015/lib/modules/action-button/action-button-details.component.js +0 -17
  112. package/esm2015/lib/modules/action-button/action-button-details.component.js.map +0 -1
  113. package/esm2015/lib/modules/action-button/action-button-header.component.js +0 -19
  114. package/esm2015/lib/modules/action-button/action-button-header.component.js.map +0 -1
  115. package/esm2015/lib/modules/action-button/action-button-icon.component.js +0 -44
  116. package/esm2015/lib/modules/action-button/action-button-icon.component.js.map +0 -1
  117. package/esm2015/lib/modules/action-button/action-button-permalink.js +0 -2
  118. package/esm2015/lib/modules/action-button/action-button-permalink.js.map +0 -1
  119. package/esm2015/lib/modules/action-button/action-button.component.js +0 -39
  120. package/esm2015/lib/modules/action-button/action-button.component.js.map +0 -1
  121. package/esm2015/lib/modules/action-button/action-button.module.js +0 -62
  122. package/esm2015/lib/modules/action-button/action-button.module.js.map +0 -1
  123. package/esm2015/lib/modules/action-button/types/action-button-container-align-items-type.js +0 -2
  124. package/esm2015/lib/modules/action-button/types/action-button-container-align-items-type.js.map +0 -1
  125. package/esm2015/lib/modules/action-button/types/action-button-container-align-items.js +0 -2
  126. package/esm2015/lib/modules/action-button/types/action-button-container-align-items.js.map +0 -1
  127. package/esm2015/lib/modules/back-to-top/back-to-top-adapter.service.js +0 -84
  128. package/esm2015/lib/modules/back-to-top/back-to-top-adapter.service.js.map +0 -1
  129. package/esm2015/lib/modules/back-to-top/back-to-top.component.js +0 -31
  130. package/esm2015/lib/modules/back-to-top/back-to-top.component.js.map +0 -1
  131. package/esm2015/lib/modules/back-to-top/back-to-top.directive.js +0 -114
  132. package/esm2015/lib/modules/back-to-top/back-to-top.directive.js.map +0 -1
  133. package/esm2015/lib/modules/back-to-top/back-to-top.module.js +0 -36
  134. package/esm2015/lib/modules/back-to-top/back-to-top.module.js.map +0 -1
  135. package/esm2015/lib/modules/back-to-top/models/back-to-top-message-type.js +0 -11
  136. package/esm2015/lib/modules/back-to-top/models/back-to-top-message-type.js.map +0 -1
  137. package/esm2015/lib/modules/back-to-top/models/back-to-top-message.js +0 -2
  138. package/esm2015/lib/modules/back-to-top/models/back-to-top-message.js.map +0 -1
  139. package/esm2015/lib/modules/back-to-top/models/back-to-top-options.js +0 -2
  140. package/esm2015/lib/modules/back-to-top/models/back-to-top-options.js.map +0 -1
  141. package/esm2015/lib/modules/box/box-content.component.js +0 -18
  142. package/esm2015/lib/modules/box/box-content.component.js.map +0 -1
  143. package/esm2015/lib/modules/box/box-controls.component.js +0 -17
  144. package/esm2015/lib/modules/box/box-controls.component.js.map +0 -1
  145. package/esm2015/lib/modules/box/box-header.component.js +0 -17
  146. package/esm2015/lib/modules/box/box-header.component.js.map +0 -1
  147. package/esm2015/lib/modules/box/box.component.js +0 -26
  148. package/esm2015/lib/modules/box/box.component.js.map +0 -1
  149. package/esm2015/lib/modules/box/box.module.js +0 -38
  150. package/esm2015/lib/modules/box/box.module.js.map +0 -1
  151. package/esm2015/lib/modules/card/card-actions.component.js +0 -18
  152. package/esm2015/lib/modules/card/card-actions.component.js.map +0 -1
  153. package/esm2015/lib/modules/card/card-content.component.js +0 -17
  154. package/esm2015/lib/modules/card/card-content.component.js.map +0 -1
  155. package/esm2015/lib/modules/card/card-title.component.js +0 -17
  156. package/esm2015/lib/modules/card/card-title.component.js.map +0 -1
  157. package/esm2015/lib/modules/card/card.component.js +0 -79
  158. package/esm2015/lib/modules/card/card.component.js.map +0 -1
  159. package/esm2015/lib/modules/card/card.module.js +0 -61
  160. package/esm2015/lib/modules/card/card.module.js.map +0 -1
  161. package/esm2015/lib/modules/definition-list/definition-list-content.component.js +0 -19
  162. package/esm2015/lib/modules/definition-list/definition-list-content.component.js.map +0 -1
  163. package/esm2015/lib/modules/definition-list/definition-list-heading.component.js +0 -19
  164. package/esm2015/lib/modules/definition-list/definition-list-heading.component.js.map +0 -1
  165. package/esm2015/lib/modules/definition-list/definition-list-label.component.js +0 -25
  166. package/esm2015/lib/modules/definition-list/definition-list-label.component.js.map +0 -1
  167. package/esm2015/lib/modules/definition-list/definition-list-value.component.js +0 -25
  168. package/esm2015/lib/modules/definition-list/definition-list-value.component.js.map +0 -1
  169. package/esm2015/lib/modules/definition-list/definition-list.component.js +0 -44
  170. package/esm2015/lib/modules/definition-list/definition-list.component.js.map +0 -1
  171. package/esm2015/lib/modules/definition-list/definition-list.module.js +0 -44
  172. package/esm2015/lib/modules/definition-list/definition-list.module.js.map +0 -1
  173. package/esm2015/lib/modules/definition-list/definition-list.service.js +0 -18
  174. package/esm2015/lib/modules/definition-list/definition-list.service.js.map +0 -1
  175. package/esm2015/lib/modules/description-list/description-list-adapter-service.js +0 -43
  176. package/esm2015/lib/modules/description-list/description-list-adapter-service.js.map +0 -1
  177. package/esm2015/lib/modules/description-list/description-list-content.component.js +0 -25
  178. package/esm2015/lib/modules/description-list/description-list-content.component.js.map +0 -1
  179. package/esm2015/lib/modules/description-list/description-list-description.component.js +0 -53
  180. package/esm2015/lib/modules/description-list/description-list-description.component.js.map +0 -1
  181. package/esm2015/lib/modules/description-list/description-list-term.component.js +0 -24
  182. package/esm2015/lib/modules/description-list/description-list-term.component.js.map +0 -1
  183. package/esm2015/lib/modules/description-list/description-list.component.js +0 -107
  184. package/esm2015/lib/modules/description-list/description-list.component.js.map +0 -1
  185. package/esm2015/lib/modules/description-list/description-list.module.js +0 -53
  186. package/esm2015/lib/modules/description-list/description-list.module.js.map +0 -1
  187. package/esm2015/lib/modules/description-list/description-list.service.js +0 -26
  188. package/esm2015/lib/modules/description-list/description-list.service.js.map +0 -1
  189. package/esm2015/lib/modules/description-list/types/description-list-mode-type.js +0 -2
  190. package/esm2015/lib/modules/description-list/types/description-list-mode-type.js.map +0 -1
  191. package/esm2015/lib/modules/description-list/types/description-list-mode.js +0 -24
  192. package/esm2015/lib/modules/description-list/types/description-list-mode.js.map +0 -1
  193. package/esm2015/lib/modules/fluid-grid/column.component.js +0 -58
  194. package/esm2015/lib/modules/fluid-grid/column.component.js.map +0 -1
  195. package/esm2015/lib/modules/fluid-grid/fluid-grid-gutter-size.js +0 -20
  196. package/esm2015/lib/modules/fluid-grid/fluid-grid-gutter-size.js.map +0 -1
  197. package/esm2015/lib/modules/fluid-grid/fluid-grid.component.js +0 -66
  198. package/esm2015/lib/modules/fluid-grid/fluid-grid.component.js.map +0 -1
  199. package/esm2015/lib/modules/fluid-grid/fluid-grid.module.js +0 -20
  200. package/esm2015/lib/modules/fluid-grid/fluid-grid.module.js.map +0 -1
  201. package/esm2015/lib/modules/fluid-grid/row.component.js +0 -29
  202. package/esm2015/lib/modules/fluid-grid/row.component.js.map +0 -1
  203. package/esm2015/lib/modules/fluid-grid/types/fluid-grid-gutter-size-type.js +0 -2
  204. package/esm2015/lib/modules/fluid-grid/types/fluid-grid-gutter-size-type.js.map +0 -1
  205. package/esm2015/lib/modules/format/format-item.js +0 -2
  206. package/esm2015/lib/modules/format/format-item.js.map +0 -1
  207. package/esm2015/lib/modules/format/format.component.js +0 -63
  208. package/esm2015/lib/modules/format/format.component.js.map +0 -1
  209. package/esm2015/lib/modules/format/format.module.js +0 -18
  210. package/esm2015/lib/modules/format/format.module.js.map +0 -1
  211. package/esm2015/lib/modules/inline-delete/inline-delete-adapter.service.js +0 -115
  212. package/esm2015/lib/modules/inline-delete/inline-delete-adapter.service.js.map +0 -1
  213. package/esm2015/lib/modules/inline-delete/inline-delete-type.js +0 -16
  214. package/esm2015/lib/modules/inline-delete/inline-delete-type.js.map +0 -1
  215. package/esm2015/lib/modules/inline-delete/inline-delete.component.js +0 -167
  216. package/esm2015/lib/modules/inline-delete/inline-delete.component.js.map +0 -1
  217. package/esm2015/lib/modules/inline-delete/inline-delete.module.js +0 -34
  218. package/esm2015/lib/modules/inline-delete/inline-delete.module.js.map +0 -1
  219. package/esm2015/lib/modules/page/page-theme-adapter.service.js +0 -26
  220. package/esm2015/lib/modules/page/page-theme-adapter.service.js.map +0 -1
  221. package/esm2015/lib/modules/page/page.component.js +0 -31
  222. package/esm2015/lib/modules/page/page.component.js.map +0 -1
  223. package/esm2015/lib/modules/page/page.module.js +0 -16
  224. package/esm2015/lib/modules/page/page.module.js.map +0 -1
  225. package/esm2015/lib/modules/page-summary/page-summary-adapter.service.js +0 -23
  226. package/esm2015/lib/modules/page-summary/page-summary-adapter.service.js.map +0 -1
  227. package/esm2015/lib/modules/page-summary/page-summary-alert.component.js +0 -21
  228. package/esm2015/lib/modules/page-summary/page-summary-alert.component.js.map +0 -1
  229. package/esm2015/lib/modules/page-summary/page-summary-content.component.js +0 -20
  230. package/esm2015/lib/modules/page-summary/page-summary-content.component.js.map +0 -1
  231. package/esm2015/lib/modules/page-summary/page-summary-image.component.js +0 -21
  232. package/esm2015/lib/modules/page-summary/page-summary-image.component.js.map +0 -1
  233. package/esm2015/lib/modules/page-summary/page-summary-key-info.component.js +0 -19
  234. package/esm2015/lib/modules/page-summary/page-summary-key-info.component.js.map +0 -1
  235. package/esm2015/lib/modules/page-summary/page-summary-status.component.js +0 -21
  236. package/esm2015/lib/modules/page-summary/page-summary-status.component.js.map +0 -1
  237. package/esm2015/lib/modules/page-summary/page-summary-subtitle.component.js +0 -20
  238. package/esm2015/lib/modules/page-summary/page-summary-subtitle.component.js.map +0 -1
  239. package/esm2015/lib/modules/page-summary/page-summary-title.component.js +0 -20
  240. package/esm2015/lib/modules/page-summary/page-summary-title.component.js.map +0 -1
  241. package/esm2015/lib/modules/page-summary/page-summary.component.js +0 -50
  242. package/esm2015/lib/modules/page-summary/page-summary.component.js.map +0 -1
  243. package/esm2015/lib/modules/page-summary/page-summary.module.js +0 -57
  244. package/esm2015/lib/modules/page-summary/page-summary.module.js.map +0 -1
  245. package/esm2015/lib/modules/shared/sky-layout-resources.module.js +0 -60
  246. package/esm2015/lib/modules/shared/sky-layout-resources.module.js.map +0 -1
  247. package/esm2015/lib/modules/text-expand/text-expand-adapter.service.js +0 -31
  248. package/esm2015/lib/modules/text-expand/text-expand-adapter.service.js.map +0 -1
  249. package/esm2015/lib/modules/text-expand/text-expand-modal-context.js +0 -6
  250. package/esm2015/lib/modules/text-expand/text-expand-modal-context.js.map +0 -1
  251. package/esm2015/lib/modules/text-expand/text-expand-modal.component.js +0 -30
  252. package/esm2015/lib/modules/text-expand/text-expand-modal.component.js.map +0 -1
  253. package/esm2015/lib/modules/text-expand/text-expand.component.js +0 -252
  254. package/esm2015/lib/modules/text-expand/text-expand.component.js.map +0 -1
  255. package/esm2015/lib/modules/text-expand/text-expand.module.js +0 -36
  256. package/esm2015/lib/modules/text-expand/text-expand.module.js.map +0 -1
  257. package/esm2015/lib/modules/text-expand-repeater/text-expand-repeater-adapter.service.js +0 -37
  258. package/esm2015/lib/modules/text-expand-repeater/text-expand-repeater-adapter.service.js.map +0 -1
  259. package/esm2015/lib/modules/text-expand-repeater/text-expand-repeater.component.js +0 -176
  260. package/esm2015/lib/modules/text-expand-repeater/text-expand-repeater.component.js.map +0 -1
  261. package/esm2015/lib/modules/text-expand-repeater/text-expand-repeater.module.js +0 -20
  262. package/esm2015/lib/modules/text-expand-repeater/text-expand-repeater.module.js.map +0 -1
  263. package/esm2015/lib/modules/text-expand-repeater/types/text-expand-repeater-list-style-type.js +0 -2
  264. package/esm2015/lib/modules/text-expand-repeater/types/text-expand-repeater-list-style-type.js.map +0 -1
  265. package/esm2015/lib/modules/toolbar/toolbar-item.component.js +0 -18
  266. package/esm2015/lib/modules/toolbar/toolbar-item.component.js.map +0 -1
  267. package/esm2015/lib/modules/toolbar/toolbar-section.component.js +0 -18
  268. package/esm2015/lib/modules/toolbar/toolbar-section.component.js.map +0 -1
  269. package/esm2015/lib/modules/toolbar/toolbar-view-actions.component.js +0 -20
  270. package/esm2015/lib/modules/toolbar/toolbar-view-actions.component.js.map +0 -1
  271. package/esm2015/lib/modules/toolbar/toolbar.component.js +0 -29
  272. package/esm2015/lib/modules/toolbar/toolbar.component.js.map +0 -1
  273. package/esm2015/lib/modules/toolbar/toolbar.module.js +0 -37
  274. package/esm2015/lib/modules/toolbar/toolbar.module.js.map +0 -1
  275. package/esm2015/skyux-layout.js +0 -5
  276. package/esm2015/skyux-layout.js.map +0 -1
  277. package/esm2015/testing/action-button-fixture.js +0 -44
  278. package/esm2015/testing/action-button-fixture.js.map +0 -1
  279. package/esm2015/testing/card-fixture.js +0 -63
  280. package/esm2015/testing/card-fixture.js.map +0 -1
  281. package/esm2015/testing/page-summary-fixture.js +0 -29
  282. package/esm2015/testing/page-summary-fixture.js.map +0 -1
  283. package/esm2015/testing/public-api.js +0 -4
  284. package/esm2015/testing/public-api.js.map +0 -1
  285. package/esm2015/testing/skyux-layout-testing.js +0 -5
  286. package/esm2015/testing/skyux-layout-testing.js.map +0 -1
  287. package/fesm2015/skyux-layout-testing.js.map +0 -1
  288. package/fesm2015/skyux-layout.js +0 -2912
  289. package/fesm2015/skyux-layout.js.map +0 -1
@@ -1,2912 +0,0 @@
1
- import * as i3 from '@angular/common';
2
- import { CommonModule } from '@angular/common';
3
- import * as i0 from '@angular/core';
4
- import { Injectable, EventEmitter, Component, ViewEncapsulation, Input, Output, ElementRef, Optional, ContentChildren, ViewChild, HostListener, NgModule, ChangeDetectionStrategy, Directive, TemplateRef, HostBinding } from '@angular/core';
5
- import * as i2 from '@angular/router';
6
- import { RouterModule } from '@angular/router';
7
- import * as i2$1 from '@skyux/indicators';
8
- import { SkyIconModule, SkyWaitModule } from '@skyux/indicators';
9
- import * as i4 from '@skyux/router';
10
- import { SkyHrefModule } from '@skyux/router';
11
- import * as i3$1 from '@skyux/theme';
12
- import { SkyThemeModule } from '@skyux/theme';
13
- import * as i1 from '@skyux/core';
14
- import { SkyMediaBreakpoints, SkyDockModule, SkyCoreAdapterService } from '@skyux/core';
15
- import { Subject, BehaviorSubject, forkJoin } from 'rxjs';
16
- import { takeUntil, take } from 'rxjs/operators';
17
- import * as i1$1 from '@skyux/i18n';
18
- import { getLibStringForLocale, SkyI18nModule, SKY_LIB_RESOURCES_PROVIDERS } from '@skyux/i18n';
19
- import * as i3$2 from '@angular/forms';
20
- import { FormsModule } from '@angular/forms';
21
- import * as i1$2 from '@skyux/forms';
22
- import { SkyCheckboxModule } from '@skyux/forms';
23
- import { trigger, transition, style, query, group, animate } from '@angular/animations';
24
- import * as i2$2 from '@skyux/modals';
25
- import { SkyModalModule } from '@skyux/modals';
26
-
27
- const RESPONSIVE_CLASS_SM = 'sky-action-button-container-sm';
28
- const RESPONSIVE_CLASS_MD = 'sky-action-button-container-md';
29
- const RESPONSIVE_CLASS_LG = 'sky-action-button-container-lg';
30
- const BREAKPOINT_MD = 912;
31
- const BREAKPOINT_LG = 1378;
32
- /**
33
- * @internal
34
- */
35
- class SkyActionButtonAdapterService {
36
- constructor(rendererFactory) {
37
- this.renderer = rendererFactory.createRenderer(undefined, undefined);
38
- }
39
- getParentWidth(element) {
40
- return element.nativeElement.parentNode.getBoundingClientRect().width;
41
- }
42
- setResponsiveClass(element, width) {
43
- const el = element.nativeElement;
44
- const className = this.getResponsiveClassName(width);
45
- this.renderer.removeClass(el, RESPONSIVE_CLASS_SM);
46
- this.renderer.removeClass(el, RESPONSIVE_CLASS_MD);
47
- this.renderer.removeClass(el, RESPONSIVE_CLASS_LG);
48
- this.renderer.addClass(el, className);
49
- }
50
- getResponsiveClassName(width) {
51
- if (width < BREAKPOINT_MD) {
52
- return RESPONSIVE_CLASS_SM;
53
- }
54
- else if (width > BREAKPOINT_MD && width < BREAKPOINT_LG) {
55
- return RESPONSIVE_CLASS_MD;
56
- }
57
- else {
58
- return RESPONSIVE_CLASS_LG;
59
- }
60
- }
61
- }
62
- SkyActionButtonAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionButtonAdapterService, deps: [{ token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable });
63
- SkyActionButtonAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionButtonAdapterService });
64
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionButtonAdapterService, decorators: [{
65
- type: Injectable
66
- }], ctorParameters: function () { return [{ type: i0.RendererFactory2 }]; } });
67
-
68
- /**
69
- * Creates a button to present users with an option to move forward with tasks.
70
- */
71
- class SkyActionButtonComponent {
72
- constructor() {
73
- /**
74
- * Fires when users select the action button.
75
- */
76
- this.actionClick = new EventEmitter();
77
- }
78
- buttonClicked() {
79
- this.actionClick.emit();
80
- }
81
- enterPress() {
82
- this.actionClick.emit();
83
- }
84
- }
85
- SkyActionButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
86
- SkyActionButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyActionButtonComponent, selector: "sky-action-button", inputs: { permalink: "permalink" }, outputs: { actionClick: "actionClick" }, ngImport: i0, template: "<a\n *ngIf=\"permalink && permalink.route\"\n class=\"sky-action-button sky-btn-default sky-rounded-corners\"\n tabindex=\"0\"\n [fragment]=\"permalink.route?.extras?.fragment\"\n [skyThemeClass]=\"{\n 'sky-btn sky-box': 'modern'\n }\"\n [queryParams]=\"permalink.route?.extras?.queryParams\"\n [queryParamsHandling]=\"permalink.route?.extras?.queryParamsHandling\"\n [routerLink]=\"permalink.route?.commands\"\n>\n <ng-container *ngTemplateOutlet=\"actionButtonContent\"> </ng-container>\n</a>\n\n<a\n *ngIf=\"permalink && !permalink.route\"\n class=\"sky-action-button sky-btn-default sky-rounded-corners\"\n tabindex=\"0\"\n [skyHref]=\"permalink.url\"\n [skyThemeClass]=\"{\n 'sky-btn sky-box': 'modern'\n }\"\n>\n <ng-container *ngTemplateOutlet=\"actionButtonContent\"> </ng-container>\n</a>\n\n<div\n *ngIf=\"!permalink\"\n class=\"sky-action-button sky-btn-default sky-rounded-corners\"\n tabindex=\"0\"\n role=\"button\"\n [skyThemeClass]=\"{\n 'sky-btn sky-box': 'modern'\n }\"\n (click)=\"buttonClicked()\"\n (keydown.enter)=\"enterPress()\"\n>\n <ng-container *ngTemplateOutlet=\"actionButtonContent\"> </ng-container>\n</div>\n\n<ng-template #actionButtonContent>\n <ng-container *skyThemeIf=\"'default'\">\n <div class=\"sky-action-button-icon-header-container\">\n <ng-container *ngTemplateOutlet=\"icon\"></ng-container>\n <ng-container *ngTemplateOutlet=\"header\"></ng-container>\n </div>\n <ng-container *ngTemplateOutlet=\"details\"></ng-container>\n </ng-container>\n\n <ng-container *skyThemeIf=\"'modern'\">\n <ng-container *ngTemplateOutlet=\"icon\"></ng-container>\n <div class=\"sky-action-button-content\">\n <ng-container *ngTemplateOutlet=\"header\"></ng-container>\n <div\n class=\"sky-action-button-details\"\n [skyThemeClass]=\"{\n 'sky-font-deemphasized': 'modern'\n }\"\n >\n <ng-container *ngTemplateOutlet=\"details\"></ng-container>\n </div>\n </div>\n </ng-container>\n</ng-template>\n\n<ng-template #icon>\n <ng-content select=\"sky-action-button-icon\"></ng-content>\n</ng-template>\n\n<ng-template #header>\n <ng-content select=\"sky-action-button-header\"></ng-content>\n</ng-template>\n\n<ng-template #details>\n <ng-content select=\"sky-action-button-details\"></ng-content>\n</ng-template>\n", styles: [".sky-action-button{border-top:1px solid #cdcfd2;border-bottom:1px solid #cdcfd2;border-left:1px solid #cdcfd2;border-right:1px solid #cdcfd2;cursor:pointer;text-align:center;text-decoration:none!important;display:block}.sky-action-button:hover{border-color:#c2c4c6}.sky-action-button-icon-header-container{display:flex;justify-content:center}.sky-action-button{padding:20px 20px 30px;margin:0 15px}.sky-action-button-icon-header-container{margin-bottom:20px}.sky-responsive-container-xs .sky-action-button,.sky-responsive-container-sm .sky-action-button,.sky-responsive-container-md .sky-action-button,.sky-responsive-container-lg .sky-action-button{padding:20px 20px 30px;margin:0 15px}.sky-responsive-container-xs .sky-action-button-icon-header-container,.sky-responsive-container-sm .sky-action-button-icon-header-container,.sky-responsive-container-md .sky-action-button-icon-header-container,.sky-responsive-container-lg .sky-action-button-icon-header-container{margin-bottom:20px}@media (min-width: 768px){.sky-action-button{padding:30px 20px;margin:0;max-width:236px}.sky-action-button-icon-header-container{margin-bottom:0;flex-direction:column}}.sky-responsive-container-sm .sky-action-button,.sky-responsive-container-md .sky-action-button,.sky-responsive-container-lg .sky-action-button{padding:30px 20px;margin:0;max-width:236px}.sky-responsive-container-sm .sky-action-button-icon-header-container,.sky-responsive-container-md .sky-action-button-icon-header-container,.sky-responsive-container-lg .sky-action-button-icon-header-container{margin-bottom:0;flex-direction:column}.sky-theme-modern .sky-action-button{display:flex;flex-flow:row nowrap;padding:30px;text-align:left;border:none}.sky-theme-modern .sky-action-button .sky-action-button-content{flex:1 1 auto;margin:0 10px 0 0;white-space:initial}.sky-theme-modern .sky-action-button{padding:30px;margin:0;max-width:446px}.sky-theme-modern .sky-responsive-container-xs .sky-action-button,.sky-theme-modern .sky-responsive-container-sm .sky-action-button,.sky-theme-modern .sky-responsive-container-md .sky-action-button,.sky-theme-modern .sky-responsive-container-lg .sky-action-button{padding:30px;margin:0;max-width:446px}@media (min-width: 768px){.sky-theme-modern .sky-action-button{padding:30px;margin:0}}.sky-theme-modern .sky-responsive-container-sm .sky-action-button,.sky-theme-modern .sky-responsive-container-md .sky-action-button,.sky-theme-modern .sky-responsive-container-lg .sky-action-button{padding:30px;margin:0}\n"], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i3$1.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.λ1, selector: "[skyHref]", inputs: ["skyHref", "skyHrefElse"] }, { type: i3$1.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }], encapsulation: i0.ViewEncapsulation.None });
87
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionButtonComponent, decorators: [{
88
- type: Component,
89
- args: [{
90
- selector: 'sky-action-button',
91
- styleUrls: ['./action-button.component.scss'],
92
- templateUrl: './action-button.component.html',
93
- encapsulation: ViewEncapsulation.None,
94
- }]
95
- }], propDecorators: { permalink: [{
96
- type: Input
97
- }], actionClick: [{
98
- type: Output
99
- }] } });
100
-
101
- /**
102
- * Wraps action buttons to ensures that they have consistent height and spacing.
103
- * @required
104
- */
105
- class SkyActionButtonContainerComponent {
106
- constructor(actionButtonAdapterService, changeRef, coreAdapterService, hostElRef, mutationObserverSvc, ngZone, themeSvc) {
107
- this.actionButtonAdapterService = actionButtonAdapterService;
108
- this.changeRef = changeRef;
109
- this.coreAdapterService = coreAdapterService;
110
- this.hostElRef = hostElRef;
111
- this.mutationObserverSvc = mutationObserverSvc;
112
- this.ngZone = ngZone;
113
- this.themeSvc = themeSvc;
114
- this.ngUnsubscribe = new Subject();
115
- }
116
- /**
117
- * Specifies how to display the action buttons inside the action button container.
118
- * Options are `"center"` or `"left"`.
119
- * @default "center"
120
- */
121
- set alignItems(value) {
122
- this._alignItems = value;
123
- }
124
- get alignItems() {
125
- return this._alignItems || 'center';
126
- }
127
- set themeName(value) {
128
- this._themeName = value;
129
- this.updateResponsiveClass();
130
- this.updateHeight();
131
- }
132
- ngOnInit() {
133
- /* istanbul ignore else */
134
- if (this.themeSvc) {
135
- this.themeSvc.settingsChange
136
- .pipe(takeUntil(this.ngUnsubscribe))
137
- .subscribe((themeSettings) => {
138
- this.themeName = themeSettings.currentSettings.theme.name;
139
- this.changeRef.markForCheck();
140
- });
141
- }
142
- // Wait for children components to complete rendering before container width is determined.
143
- setTimeout(() => {
144
- this.updateResponsiveClass();
145
- });
146
- }
147
- ngAfterContentInit() {
148
- // Watch for dynamic action button changes and recalculate height.
149
- /* istanbul ignore else */
150
- if (this.actionButtons) {
151
- this.actionButtons.changes
152
- .pipe(takeUntil(this.ngUnsubscribe))
153
- .subscribe(() => {
154
- this.updateHeight();
155
- });
156
- }
157
- this.initMutationObserver();
158
- }
159
- ngOnDestroy() {
160
- this.ngUnsubscribe.next();
161
- this.ngUnsubscribe.complete();
162
- this.destroyMutationObserver();
163
- }
164
- onWindowResize() {
165
- this.updateResponsiveClass();
166
- }
167
- initMutationObserver() {
168
- /* istanbul ignore else */
169
- if (!this.mutationObserver) {
170
- const el = this.containerRef.nativeElement;
171
- // MutationObserver is patched by Zone.js and therefore becomes part of the
172
- // Angular change detection cycle, but this can lead to infinite loops in some
173
- // scenarios. This will keep MutationObserver from triggering change detection.
174
- this.ngZone.runOutsideAngular(() => {
175
- this.mutationObserver = this.mutationObserverSvc.create(() => {
176
- this.updateHeight();
177
- });
178
- this.mutationObserver.observe(el, {
179
- characterData: true,
180
- subtree: true,
181
- });
182
- });
183
- }
184
- }
185
- destroyMutationObserver() {
186
- if (this.mutationObserver) {
187
- this.mutationObserver.disconnect();
188
- this.mutationObserver = undefined;
189
- }
190
- }
191
- updateHeight() {
192
- this.coreAdapterService.resetHeight(this.containerRef, '.sky-action-button');
193
- if (this._themeName === 'modern') {
194
- // Wait for children components to complete rendering before height is determined.
195
- setTimeout(() => {
196
- this.coreAdapterService.syncMaxHeight(this.containerRef, '.sky-action-button');
197
- });
198
- }
199
- }
200
- updateResponsiveClass() {
201
- const parentWidth = this.actionButtonAdapterService.getParentWidth(this.hostElRef);
202
- this.actionButtonAdapterService.setResponsiveClass(this.containerRef, parentWidth);
203
- }
204
- }
205
- SkyActionButtonContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionButtonContainerComponent, deps: [{ token: SkyActionButtonAdapterService }, { token: i0.ChangeDetectorRef }, { token: i1.SkyCoreAdapterService }, { token: i0.ElementRef }, { token: i1.MutationObserverService }, { token: i0.NgZone }, { token: i3$1.SkyThemeService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
206
- SkyActionButtonContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyActionButtonContainerComponent, selector: "sky-action-button-container", inputs: { alignItems: "alignItems" }, host: { listeners: { "window:resize": "onWindowResize()" } }, providers: [SkyActionButtonAdapterService], queries: [{ propertyName: "actionButtons", predicate: SkyActionButtonComponent }], viewQueries: [{ propertyName: "containerRef", first: true, predicate: ["container"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<div class=\"sky-action-button-container\" #container>\n <div\n class=\"sky-action-button-flex\"\n [ngClass]=\"{\n 'sky-action-button-flex-align-left': alignItems === 'left',\n 'sky-action-button-flex-align-center': alignItems === 'center'\n }\"\n >\n <ng-content></ng-content>\n </div>\n</div>\n", styles: [":host{display:block}.sky-action-button-flex sky-action-button{display:block}.sky-action-button-flex .sky-action-button{height:100%;min-width:236px;margin-left:10px;margin-right:10px}.sky-action-button-flex{display:block;padding:0}.sky-action-button-flex sky-action-button{margin:20px 0}.sky-responsive-container-xs .sky-action-button-flex,.sky-responsive-container-sm .sky-action-button-flex,.sky-responsive-container-md .sky-action-button-flex,.sky-responsive-container-lg .sky-action-button-flex{display:block;padding:0}.sky-responsive-container-xs .sky-action-button-flex sky-action-button,.sky-responsive-container-sm .sky-action-button-flex sky-action-button,.sky-responsive-container-md .sky-action-button-flex sky-action-button,.sky-responsive-container-lg .sky-action-button-flex sky-action-button{margin:20px 0}@media (min-width: 768px){.sky-action-button-flex{display:flex;flex-flow:row wrap;padding:10px 0}.sky-action-button-flex.sky-action-button-flex-align-center{justify-content:center}.sky-action-button-flex.sky-action-button-flex-align-left{justify-content:flex-start}.sky-action-button-flex sky-action-button{margin:10px 0}}.sky-responsive-container-sm .sky-action-button-flex,.sky-responsive-container-md .sky-action-button-flex,.sky-responsive-container-lg .sky-action-button-flex{display:flex;flex-flow:row wrap;padding:10px 0}.sky-responsive-container-sm .sky-action-button-flex.sky-action-button-flex-align-center,.sky-responsive-container-md .sky-action-button-flex.sky-action-button-flex-align-center,.sky-responsive-container-lg .sky-action-button-flex.sky-action-button-flex-align-center{justify-content:center}.sky-responsive-container-sm .sky-action-button-flex.sky-action-button-flex-align-left,.sky-responsive-container-md .sky-action-button-flex.sky-action-button-flex-align-left,.sky-responsive-container-lg .sky-action-button-flex.sky-action-button-flex-align-left{justify-content:flex-start}.sky-responsive-container-sm .sky-action-button-flex sky-action-button,.sky-responsive-container-md .sky-action-button-flex sky-action-button,.sky-responsive-container-lg .sky-action-button-flex sky-action-button{margin:10px 0}.sky-theme-modern .sky-action-button-container{margin:0 auto}.sky-theme-modern .sky-action-button-container.sky-action-button-container-sm{max-width:446px}.sky-theme-modern .sky-action-button-container.sky-action-button-container-md{max-width:912px}.sky-theme-modern .sky-action-button-container.sky-action-button-container-lg{max-width:1378px}.sky-theme-modern .sky-action-button-container .sky-action-button-flex .sky-action-button{height:auto;min-width:auto;margin:0}.sky-theme-modern .sky-action-button-flex{display:flex;flex-flow:row wrap;padding:0;margin:0 0 -20px -20px}.sky-theme-modern .sky-action-button-flex sky-action-button{margin:0 0 20px 20px;flex:0 1 446px}.sky-theme-modern .sky-responsive-container-xs .sky-action-button-flex,.sky-theme-modern .sky-responsive-container-sm .sky-action-button-flex,.sky-theme-modern .sky-responsive-container-md .sky-action-button-flex,.sky-theme-modern .sky-responsive-container-lg .sky-action-button-flex{display:flex;flex-flow:row wrap;padding:0;margin:0 0 -20px -20px}.sky-theme-modern .sky-responsive-container-xs .sky-action-button-flex sky-action-button,.sky-theme-modern .sky-responsive-container-sm .sky-action-button-flex sky-action-button,.sky-theme-modern .sky-responsive-container-md .sky-action-button-flex sky-action-button,.sky-theme-modern .sky-responsive-container-lg .sky-action-button-flex sky-action-button{margin:0 0 20px 20px;flex:0 1 446px}\n"], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None });
207
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionButtonContainerComponent, decorators: [{
208
- type: Component,
209
- args: [{
210
- selector: 'sky-action-button-container',
211
- styleUrls: ['./action-button-container.component.scss'],
212
- templateUrl: './action-button-container.component.html',
213
- providers: [SkyActionButtonAdapterService],
214
- encapsulation: ViewEncapsulation.None,
215
- }]
216
- }], ctorParameters: function () { return [{ type: SkyActionButtonAdapterService }, { type: i0.ChangeDetectorRef }, { type: i1.SkyCoreAdapterService }, { type: i0.ElementRef }, { type: i1.MutationObserverService }, { type: i0.NgZone }, { type: i3$1.SkyThemeService, decorators: [{
217
- type: Optional
218
- }] }]; }, propDecorators: { alignItems: [{
219
- type: Input
220
- }], actionButtons: [{
221
- type: ContentChildren,
222
- args: [SkyActionButtonComponent]
223
- }], containerRef: [{
224
- type: ViewChild,
225
- args: ['container', {
226
- read: ElementRef,
227
- static: true,
228
- }]
229
- }], onWindowResize: [{
230
- type: HostListener,
231
- args: ['window:resize']
232
- }] } });
233
-
234
- /**
235
- * Specifies a description to display on an action button.
236
- */
237
- class SkyActionButtonDetailsComponent {
238
- }
239
- SkyActionButtonDetailsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionButtonDetailsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
240
- SkyActionButtonDetailsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyActionButtonDetailsComponent, selector: "sky-action-button-details", ngImport: i0, template: "<ng-content></ng-content>\n" });
241
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionButtonDetailsComponent, decorators: [{
242
- type: Component,
243
- args: [{
244
- selector: 'sky-action-button-details',
245
- templateUrl: './action-button-details.component.html',
246
- }]
247
- }] });
248
-
249
- /**
250
- * Specifies a header to display on an action button.
251
- */
252
- class SkyActionButtonHeaderComponent {
253
- }
254
- SkyActionButtonHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionButtonHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
255
- SkyActionButtonHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyActionButtonHeaderComponent, selector: "sky-action-button-header", ngImport: i0, template: "<div\n class=\"sky-action-button-header\"\n [skyThemeClass]=\"{\n 'sky-headline': 'modern',\n 'sky-section-heading': 'default'\n }\"\n>\n <ng-content></ng-content>\n</div>\n", styles: [":host .sky-action-button-header{margin:0 5px}:host-context(.sky-responsive-container-xs) .sky-action-button-header,:host-context(.sky-responsive-container-sm) .sky-action-button-header,:host-context(.sky-responsive-container-md) .sky-action-button-header,:host-context(.sky-responsive-container-lg) .sky-action-button-header{margin:0 5px}@media (min-width: 768px){:host .sky-action-button-header{margin:0 0 20px}}:host-context(.sky-responsive-container-sm) .sky-action-button-header,:host-context(.sky-responsive-container-md) .sky-action-button-header,:host-context(.sky-responsive-container-lg) .sky-action-button-header{margin:0 0 20px}:host-context(.sky-theme-modern) .sky-action-button-header{margin:0 0 10px}.sky-theme-modern .sky-action-button-header{margin:0 0 10px}\n"], directives: [{ type: i3$1.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }] });
256
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionButtonHeaderComponent, decorators: [{
257
- type: Component,
258
- args: [{
259
- selector: 'sky-action-button-header',
260
- styleUrls: ['./action-button-header.component.scss'],
261
- templateUrl: './action-button-header.component.html',
262
- }]
263
- }] });
264
-
265
- const FONTSIZECLASS_SMALL = '2x';
266
- const FONTSIZECLASS_LARGE = '3x';
267
- /**
268
- * Specifies an icon to display on the action button.
269
- */
270
- class SkyActionButtonIconComponent {
271
- constructor(mediaQueryService) {
272
- this.mediaQueryService = mediaQueryService;
273
- this.fontSizeClass = FONTSIZECLASS_LARGE;
274
- this.subscription = this.mediaQueryService.subscribe((args) => {
275
- if (args === SkyMediaBreakpoints.xs) {
276
- this.fontSizeClass = FONTSIZECLASS_SMALL;
277
- }
278
- else {
279
- this.fontSizeClass = FONTSIZECLASS_LARGE;
280
- }
281
- });
282
- }
283
- ngOnDestroy() {
284
- /* istanbul ignore else */
285
- /* sanity check */
286
- if (this.subscription) {
287
- this.subscription.unsubscribe();
288
- }
289
- }
290
- }
291
- SkyActionButtonIconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionButtonIconComponent, deps: [{ token: i1.SkyMediaQueryService }], target: i0.ɵɵFactoryTarget.Component });
292
- SkyActionButtonIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyActionButtonIconComponent, selector: "sky-action-button-icon", inputs: { iconType: "iconType" }, ngImport: i0, template: "<div aria-hidden=\"true\" class=\"sky-action-button-icon-container\">\n <sky-icon\n class=\"sky-action-button-icon\"\n [icon]=\"iconType\"\n [size]=\"fontSizeClass\"\n ></sky-icon>\n</div>\n", styles: [":host .sky-action-button-icon-container{margin:0 5px}:host-context(.sky-responsive-container-xs) .sky-action-button-icon-container,:host-context(.sky-responsive-container-sm) .sky-action-button-icon-container,:host-context(.sky-responsive-container-md) .sky-action-button-icon-container,:host-context(.sky-responsive-container-lg) .sky-action-button-icon-container{margin:0 5px}@media (min-width: 768px){:host .sky-action-button-icon-container{margin:0 0 20px}}:host-context(.sky-responsive-container-sm) .sky-action-button-icon-container,:host-context(.sky-responsive-container-md) .sky-action-button-icon-container,:host-context(.sky-responsive-container-lg) .sky-action-button-icon-container{margin:0 0 20px}.sky-action-button-icon{color:#0974a1}:host-context(.sky-theme-modern) .sky-action-button-icon-container{color:#0974a1;background:#e8f8ff;margin:0 20px 0 0;border-radius:50%;width:42px;height:42px;display:flex;align-items:center;justify-content:center;flex:0 0 auto}:host-context(.sky-theme-modern) .sky-action-button-icon-container ::ng-deep .sky-icon{font-size:24px!important}.sky-theme-modern .sky-action-button-icon-container{color:#0974a1;background:#e8f8ff;margin:0 20px 0 0;border-radius:50%;width:42px;height:42px;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.sky-theme-modern .sky-action-button-icon-container ::ng-deep .sky-icon{font-size:24px!important}\n"], components: [{ type: i2$1.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }] });
293
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionButtonIconComponent, decorators: [{
294
- type: Component,
295
- args: [{
296
- selector: 'sky-action-button-icon',
297
- styleUrls: ['./action-button-icon.component.scss'],
298
- templateUrl: './action-button-icon.component.html',
299
- }]
300
- }], ctorParameters: function () { return [{ type: i1.SkyMediaQueryService }]; }, propDecorators: { iconType: [{
301
- type: Input
302
- }] } });
303
-
304
- class SkyActionButtonModule {
305
- }
306
- SkyActionButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
307
- SkyActionButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionButtonModule, declarations: [SkyActionButtonComponent,
308
- SkyActionButtonContainerComponent,
309
- SkyActionButtonDetailsComponent,
310
- SkyActionButtonHeaderComponent,
311
- SkyActionButtonIconComponent], imports: [CommonModule,
312
- RouterModule,
313
- SkyHrefModule,
314
- SkyIconModule,
315
- SkyThemeModule], exports: [SkyActionButtonComponent,
316
- SkyActionButtonContainerComponent,
317
- SkyActionButtonDetailsComponent,
318
- SkyActionButtonHeaderComponent,
319
- SkyActionButtonIconComponent] });
320
- SkyActionButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionButtonModule, imports: [[
321
- CommonModule,
322
- RouterModule,
323
- SkyHrefModule,
324
- SkyIconModule,
325
- SkyThemeModule,
326
- ]] });
327
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionButtonModule, decorators: [{
328
- type: NgModule,
329
- args: [{
330
- declarations: [
331
- SkyActionButtonComponent,
332
- SkyActionButtonContainerComponent,
333
- SkyActionButtonDetailsComponent,
334
- SkyActionButtonHeaderComponent,
335
- SkyActionButtonIconComponent,
336
- ],
337
- imports: [
338
- CommonModule,
339
- RouterModule,
340
- SkyHrefModule,
341
- SkyIconModule,
342
- SkyThemeModule,
343
- ],
344
- exports: [
345
- SkyActionButtonComponent,
346
- SkyActionButtonContainerComponent,
347
- SkyActionButtonDetailsComponent,
348
- SkyActionButtonHeaderComponent,
349
- SkyActionButtonIconComponent,
350
- ],
351
- }]
352
- }] });
353
-
354
- /**
355
- * NOTICE: DO NOT MODIFY THIS FILE!
356
- * The contents of this file were automatically generated by
357
- * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-layout' schematic.
358
- * To update this file, simply rerun the command.
359
- */
360
- const RESOURCES = {
361
- 'EN-US': {
362
- skyux_back_to_top: { message: 'Back to top' },
363
- skyux_card_checkbox_label: { message: 'Select card' },
364
- skyux_definition_list_none_found: { message: 'None found.' },
365
- skyux_description_list_none_found: { message: 'None found.' },
366
- skyux_inline_delete_assistive_text: {
367
- message: 'Are you sure you want to delete this item?',
368
- },
369
- skyux_inline_delete_cancel: { message: 'Cancel' },
370
- skyux_inline_delete_confirm_deletion: { message: 'Confirm deletion' },
371
- skyux_inline_delete_delete: { message: 'Delete' },
372
- skyux_text_expand_close_text: { message: 'Close' },
373
- skyux_text_expand_modal_title: { message: 'Expanded view' },
374
- skyux_text_expand_see_less: { message: 'See less' },
375
- skyux_text_expand_see_more: { message: 'See more' },
376
- },
377
- };
378
- class SkyLayoutResourcesProvider {
379
- getString(localeInfo, name) {
380
- return getLibStringForLocale(RESOURCES, localeInfo.locale, name);
381
- }
382
- }
383
- /**
384
- * Import into any component library module that needs to use resource strings.
385
- */
386
- class SkyLayoutResourcesModule {
387
- }
388
- SkyLayoutResourcesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyLayoutResourcesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
389
- SkyLayoutResourcesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyLayoutResourcesModule, exports: [SkyI18nModule] });
390
- SkyLayoutResourcesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyLayoutResourcesModule, providers: [
391
- {
392
- provide: SKY_LIB_RESOURCES_PROVIDERS,
393
- useClass: SkyLayoutResourcesProvider,
394
- multi: true,
395
- },
396
- ], imports: [SkyI18nModule] });
397
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyLayoutResourcesModule, decorators: [{
398
- type: NgModule,
399
- args: [{
400
- exports: [SkyI18nModule],
401
- providers: [
402
- {
403
- provide: SKY_LIB_RESOURCES_PROVIDERS,
404
- useClass: SkyLayoutResourcesProvider,
405
- multi: true,
406
- },
407
- ],
408
- }]
409
- }] });
410
-
411
- /**
412
- * @internal
413
- */
414
- class SkyBackToTopComponent {
415
- constructor() {
416
- this._scrollToTopClick = new Subject();
417
- }
418
- get scrollToTopClick() {
419
- return this._scrollToTopClick.asObservable();
420
- }
421
- onScrollToTopClick() {
422
- this._scrollToTopClick.next();
423
- this._scrollToTopClick.complete();
424
- }
425
- }
426
- SkyBackToTopComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBackToTopComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
427
- SkyBackToTopComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyBackToTopComponent, selector: "sky-back-to-top", ngImport: i0, template: "<div class=\"sky-back-to-top sky-padding-squish-large\">\n <button\n class=\"sky-btn sky-btn-link-inline\"\n type=\"button\"\n (click)=\"onScrollToTopClick()\"\n >\n {{ 'skyux_back_to_top' | skyLibResources }}\n </button>\n</div>\n", styles: [".sky-back-to-top{display:flex;align-items:center;width:100%;background-color:#fff;box-shadow:0 -3px 3px #cdcfd2}\n"], pipes: { "skyLibResources": i1$1.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
428
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBackToTopComponent, decorators: [{
429
- type: Component,
430
- args: [{
431
- selector: 'sky-back-to-top',
432
- templateUrl: './back-to-top.component.html',
433
- styleUrls: ['./back-to-top.component.scss'],
434
- changeDetection: ChangeDetectionStrategy.OnPush,
435
- }]
436
- }] });
437
-
438
- /**
439
- * @internal
440
- */
441
- class SkyBackToTopDomAdapterService {
442
- constructor(windowRef, scrollableHostService) {
443
- this.windowRef = windowRef;
444
- this.scrollableHostService = scrollableHostService;
445
- this.ngUnsubscribe = new Subject();
446
- this.scrollableHostScrollEventUnsubscribe = new Subject();
447
- }
448
- ngOnDestroy() {
449
- this.ngUnsubscribe.next();
450
- this.ngUnsubscribe.complete();
451
- this.scrollableHostScrollEventUnsubscribe.next();
452
- this.scrollableHostScrollEventUnsubscribe.complete();
453
- }
454
- /**
455
- * This event returns a boolean on scroll indicating whether the provided element is in view.
456
- * @param elementRef The target element reference.
457
- */
458
- elementInViewOnScroll(elementRef) {
459
- const scrollableHostObservable = this.scrollableHostService.watchScrollableHostScrollEvents(elementRef);
460
- const isInitiallyInView = this.isElementScrolledInView(elementRef);
461
- const returnedObservable = new BehaviorSubject(isInitiallyInView);
462
- scrollableHostObservable
463
- .pipe(takeUntil(this.scrollableHostScrollEventUnsubscribe))
464
- .subscribe(() => {
465
- const isInView = this.isElementScrolledInView(elementRef);
466
- returnedObservable.next(isInView);
467
- });
468
- return returnedObservable;
469
- }
470
- /**
471
- * Scrolls the window or scrollable parent to the provided element.
472
- * @param elementRef The target element reference.
473
- */
474
- scrollToElement(elementRef) {
475
- /* sanity check */
476
- /* istanbul ignore if */
477
- if (!elementRef || !elementRef.nativeElement) {
478
- return;
479
- }
480
- const scrollableHost = this.scrollableHostService.getScrollableHost(elementRef);
481
- if (scrollableHost instanceof Window) {
482
- // Scroll to top of window, but account for the body margin that allows for the omnibar if it exists.
483
- const bodyMarginOffset = parseInt(getComputedStyle(document.body).marginTop, 10);
484
- const newOffsetTop = elementRef.nativeElement.offsetTop - bodyMarginOffset;
485
- this.windowRef.nativeWindow.scrollTo(elementRef.nativeElement.offsetLeft, newOffsetTop);
486
- }
487
- else {
488
- // Scroll to top of parent element.
489
- scrollableHost.scrollTop =
490
- scrollableHost.offsetTop - elementRef.nativeElement.offsetTop;
491
- }
492
- }
493
- isElementScrolledInView(element) {
494
- const parentElement = this.scrollableHostService.getScrollableHost(element.nativeElement);
495
- if (!element.nativeElement.offsetParent) {
496
- return true;
497
- }
498
- const buffer = 25;
499
- const elementRect = element.nativeElement.getBoundingClientRect();
500
- /* istanbul ignore else */
501
- if (parentElement instanceof HTMLElement) {
502
- const parentRect = parentElement.getBoundingClientRect();
503
- return elementRect.top > parentRect.top - buffer;
504
- }
505
- else {
506
- return elementRect.top > -buffer;
507
- }
508
- }
509
- }
510
- SkyBackToTopDomAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBackToTopDomAdapterService, deps: [{ token: i1.SkyAppWindowRef }, { token: i1.SkyScrollableHostService }], target: i0.ɵɵFactoryTarget.Injectable });
511
- SkyBackToTopDomAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBackToTopDomAdapterService });
512
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBackToTopDomAdapterService, decorators: [{
513
- type: Injectable
514
- }], ctorParameters: function () { return [{ type: i1.SkyAppWindowRef }, { type: i1.SkyScrollableHostService }]; } });
515
-
516
- /**
517
- * Specifies the type of message to send to the back to top component.
518
- */
519
- var SkyBackToTopMessageType;
520
- (function (SkyBackToTopMessageType) {
521
- /**
522
- * Scrolls the element back to the top.
523
- */
524
- SkyBackToTopMessageType[SkyBackToTopMessageType["BackToTop"] = 0] = "BackToTop";
525
- })(SkyBackToTopMessageType || (SkyBackToTopMessageType = {}));
526
-
527
- /**
528
- * Associates a button with an element on the page and displays that button
529
- * to return to the element after users scroll away.
530
- */
531
- class SkyBackToTopDirective {
532
- constructor(dockService, domAdapter, element) {
533
- this.dockService = dockService;
534
- this.domAdapter = domAdapter;
535
- this.element = element;
536
- this.buttonHidden = false;
537
- this.ngUnsubscribe = new Subject();
538
- }
539
- /**
540
- * Specifies configuration options for the back to top component.
541
- */
542
- set skyBackToTop(value) {
543
- this.buttonHidden = !!(value === null || value === void 0 ? void 0 : value.buttonHidden);
544
- this.handleBackToTopButton(this.elementInView);
545
- }
546
- /**
547
- * Provides an observable to send commands to the back to top component.
548
- * The commands respect the `SkyBackToTopMessage` type.
549
- */
550
- set skyBackToTopMessageStream(value) {
551
- if (this._skyBackToTopMessageStream) {
552
- this._skyBackToTopMessageStream.unsubscribe();
553
- }
554
- this._skyBackToTopMessageStream = value;
555
- this._skyBackToTopMessageStream
556
- .pipe(takeUntil(this.ngUnsubscribe))
557
- .subscribe((message) => this.handleIncomingMessages(message));
558
- }
559
- ngAfterViewInit() {
560
- this.elementInView = this.domAdapter.isElementScrolledInView(this.element);
561
- this.handleBackToTopButton(this.elementInView);
562
- this.setBackToTopListeners();
563
- }
564
- ngOnDestroy() {
565
- if (this.dockItem) {
566
- this.dockItem.destroy();
567
- }
568
- }
569
- handleBackToTopButton(elementInView) {
570
- // Add back to top button if user scrolls down and button is not hidden.
571
- if (!this.dockItem &&
572
- elementInView !== undefined &&
573
- !elementInView &&
574
- !this.buttonHidden) {
575
- this.addBackToTop();
576
- }
577
- // Remove back to top button if user scrolls back up.
578
- if (elementInView || this.buttonHidden) {
579
- this.destroyBackToTop();
580
- }
581
- }
582
- addBackToTop() {
583
- this.dockItem = this.dockService.insertComponent(SkyBackToTopComponent);
584
- // Listen for clicks on the "back to top" button so we know when to scroll up.
585
- this.dockItem.componentInstance.scrollToTopClick
586
- .pipe(takeUntil(this.ngUnsubscribe))
587
- .subscribe(() => {
588
- this.domAdapter.scrollToElement(this.element);
589
- });
590
- }
591
- handleIncomingMessages(message) {
592
- /* istanbul ignore else */
593
- if (message.type === SkyBackToTopMessageType.BackToTop) {
594
- this.domAdapter.scrollToElement(this.element);
595
- }
596
- }
597
- setBackToTopListeners() {
598
- /* istanbul ignore else */
599
- if (this.element) {
600
- this.domAdapter
601
- .elementInViewOnScroll(this.element)
602
- .pipe(takeUntil(this.ngUnsubscribe))
603
- .subscribe((elementInView) => {
604
- this.elementInView = elementInView;
605
- this.handleBackToTopButton(elementInView);
606
- });
607
- }
608
- }
609
- destroyBackToTop() {
610
- /* istanbul ignore else */
611
- if (this.dockItem) {
612
- this.dockItem.destroy();
613
- this.dockItem = undefined;
614
- }
615
- }
616
- }
617
- SkyBackToTopDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBackToTopDirective, deps: [{ token: i1.SkyDockService }, { token: SkyBackToTopDomAdapterService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
618
- SkyBackToTopDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: SkyBackToTopDirective, selector: "[skyBackToTop]", inputs: { skyBackToTop: "skyBackToTop", skyBackToTopMessageStream: "skyBackToTopMessageStream" }, providers: [SkyBackToTopDomAdapterService], ngImport: i0 });
619
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBackToTopDirective, decorators: [{
620
- type: Directive,
621
- args: [{
622
- selector: '[skyBackToTop]',
623
- providers: [SkyBackToTopDomAdapterService],
624
- }]
625
- }], ctorParameters: function () { return [{ type: i1.SkyDockService }, { type: SkyBackToTopDomAdapterService }, { type: i0.ElementRef }]; }, propDecorators: { skyBackToTop: [{
626
- type: Input
627
- }], skyBackToTopMessageStream: [{
628
- type: Input
629
- }] } });
630
-
631
- class SkyBackToTopModule {
632
- }
633
- SkyBackToTopModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBackToTopModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
634
- SkyBackToTopModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBackToTopModule, declarations: [SkyBackToTopComponent, SkyBackToTopDirective], imports: [CommonModule,
635
- SkyDockModule,
636
- SkyI18nModule,
637
- SkyLayoutResourcesModule], exports: [SkyBackToTopComponent, SkyBackToTopDirective] });
638
- SkyBackToTopModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBackToTopModule, imports: [[
639
- CommonModule,
640
- SkyDockModule,
641
- SkyI18nModule,
642
- SkyLayoutResourcesModule,
643
- ]] });
644
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBackToTopModule, decorators: [{
645
- type: NgModule,
646
- args: [{
647
- declarations: [SkyBackToTopComponent, SkyBackToTopDirective],
648
- imports: [
649
- CommonModule,
650
- SkyDockModule,
651
- SkyI18nModule,
652
- SkyLayoutResourcesModule,
653
- ],
654
- exports: [SkyBackToTopComponent, SkyBackToTopDirective],
655
- entryComponents: [SkyBackToTopComponent],
656
- }]
657
- }] });
658
-
659
- /**
660
- * Specifies the body content to display inside the box and provides padding around that content.
661
- */
662
- class SkyBoxContentComponent {
663
- }
664
- SkyBoxContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBoxContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
665
- SkyBoxContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyBoxContentComponent, selector: "sky-box-content", ngImport: i0, template: "<div\n class=\"sky-box-content\"\n [skyThemeClass]=\"{\n 'sky-padding-even-large': 'default',\n 'sky-padding-even-xl': 'modern'\n }\"\n>\n <ng-content></ng-content>\n</div>\n", directives: [{ type: i3$1.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }] });
666
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBoxContentComponent, decorators: [{
667
- type: Component,
668
- args: [{
669
- selector: 'sky-box-content',
670
- templateUrl: './box-content.component.html',
671
- }]
672
- }] });
673
-
674
- /**
675
- * Specifies the controls to display in upper right corner of the box. These buttons typically let users edit the box content.
676
- */
677
- class SkyBoxControlsComponent {
678
- }
679
- SkyBoxControlsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBoxControlsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
680
- SkyBoxControlsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyBoxControlsComponent, selector: "sky-box-controls", ngImport: i0, template: "<div class=\"sky-box-controls\">\n <ng-content></ng-content>\n</div>\n" });
681
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBoxControlsComponent, decorators: [{
682
- type: Component,
683
- args: [{
684
- selector: 'sky-box-controls',
685
- templateUrl: './box-controls.component.html',
686
- }]
687
- }] });
688
-
689
- /**
690
- * Specifies a header for the box.
691
- */
692
- class SkyBoxHeaderComponent {
693
- }
694
- SkyBoxHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBoxHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
695
- SkyBoxHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyBoxHeaderComponent, selector: "sky-box-header", ngImport: i0, template: "<div class=\"sky-box-header\">\n <ng-content></ng-content>\n</div>\n" });
696
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBoxHeaderComponent, decorators: [{
697
- type: Component,
698
- args: [{
699
- selector: 'sky-box-header',
700
- templateUrl: './box-header.component.html',
701
- }]
702
- }] });
703
-
704
- /**
705
- * Provides a common look-and-feel for box content with options to display a common box header, specify body content, and display common box controls.
706
- */
707
- class SkyBoxComponent {
708
- }
709
- SkyBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBoxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
710
- SkyBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyBoxComponent, selector: "sky-box", inputs: { ariaLabel: "ariaLabel", ariaLabelledBy: "ariaLabelledBy", ariaRole: "ariaRole" }, ngImport: i0, template: "<section\n class=\"sky-box\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.role]=\"ariaRole\"\n [skyThemeClass]=\"{\n 'sky-shadow sky-border-dark': 'default',\n 'sky-elevation-1-bordered': 'modern'\n }\"\n>\n <div class=\"sky-box-header-content\">\n <ng-content select=\"sky-box-header\"></ng-content>\n <ng-content select=\"sky-box-controls\"></ng-content>\n </div>\n <ng-content></ng-content>\n</section>\n", styles: [".sky-box{background-color:#fff}.sky-box .sky-box-header-content{display:flex;flex-direction:row;flex-wrap:wrap;align-items:baseline;padding:20px 20px 0}.sky-box .sky-box-header-content:empty{display:none}.sky-box .sky-box-header-content sky-box-header{flex:1 0;order:0}.sky-box .sky-box-header-content sky-box-header .sky-box-header{padding:0 20px 0 0}.sky-box .sky-box-header-content sky-box-header .sky-box-header h1,.sky-box .sky-box-header-content sky-box-header .sky-box-header h2,.sky-box .sky-box-header-content sky-box-header .sky-box-header h3,.sky-box .sky-box-header-content sky-box-header .sky-box-header h4,.sky-box .sky-box-header-content sky-box-header .sky-box-header h5,.sky-box .sky-box-header-content sky-box-header .sky-box-header h6{margin:0}.sky-box .sky-box-header-content sky-box-controls{order:1}.sky-box .sky-box-header-content sky-box-controls .sky-box-controls{position:relative;top:-2px}.sky-box sky-box-content{flex:0 1 100%;order:2}.sky-box sky-box-content .sky-box-content{padding:20px}.sky-theme-modern .sky-box{border-radius:6px;overflow:hidden}.sky-theme-modern .sky-box .sky-box-header-content{padding:30px 30px 0}.sky-theme-modern .sky-box .sky-box-header-content sky-box-header .sky-box-header{padding:0 30px 0 0}.sky-theme-modern .sky-box sky-box-content .sky-box-content{padding:30px}\n"], directives: [{ type: i3$1.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }], encapsulation: i0.ViewEncapsulation.None });
711
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBoxComponent, decorators: [{
712
- type: Component,
713
- args: [{
714
- selector: 'sky-box',
715
- templateUrl: './box.component.html',
716
- styleUrls: ['./box.component.scss'],
717
- encapsulation: ViewEncapsulation.None,
718
- }]
719
- }], propDecorators: { ariaLabel: [{
720
- type: Input
721
- }], ariaLabelledBy: [{
722
- type: Input
723
- }], ariaRole: [{
724
- type: Input
725
- }] } });
726
-
727
- class SkyBoxModule {
728
- }
729
- SkyBoxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
730
- SkyBoxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBoxModule, declarations: [SkyBoxComponent,
731
- SkyBoxHeaderComponent,
732
- SkyBoxContentComponent,
733
- SkyBoxControlsComponent], imports: [CommonModule, SkyThemeModule], exports: [SkyBoxComponent,
734
- SkyBoxHeaderComponent,
735
- SkyBoxContentComponent,
736
- SkyBoxControlsComponent] });
737
- SkyBoxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBoxModule, imports: [[CommonModule, SkyThemeModule]] });
738
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyBoxModule, decorators: [{
739
- type: NgModule,
740
- args: [{
741
- declarations: [
742
- SkyBoxComponent,
743
- SkyBoxHeaderComponent,
744
- SkyBoxContentComponent,
745
- SkyBoxControlsComponent,
746
- ],
747
- imports: [CommonModule, SkyThemeModule],
748
- exports: [
749
- SkyBoxComponent,
750
- SkyBoxHeaderComponent,
751
- SkyBoxContentComponent,
752
- SkyBoxControlsComponent,
753
- ],
754
- }]
755
- }] });
756
-
757
- /**
758
- * @internal
759
- */
760
- class SkyInlineDeleteAdapterService {
761
- constructor(coreAdapterService, rendererFactory) {
762
- this.coreAdapterService = coreAdapterService;
763
- this.renderer = rendererFactory.createRenderer(undefined, undefined);
764
- }
765
- clearListeners() {
766
- /* istanbul ignore else */
767
- if (this.parentElUnlistenFn) {
768
- this.parentElUnlistenFn();
769
- }
770
- }
771
- setEl(element) {
772
- this.element = element;
773
- this.parentEl = element.parentElement;
774
- /* istanbul ignore else */
775
- if (this.parentEl) {
776
- this.parentElUnlistenFn = this.renderer.listen(this.parentEl, 'focusin', (event) => {
777
- const target = event.target;
778
- if (!this.element.contains(target) && this.parentEl !== target) {
779
- event.preventDefault();
780
- event.stopPropagation();
781
- event.stopImmediatePropagation();
782
- target.blur();
783
- this.focusNextElement(target, this.isShift(event), this.parentEl);
784
- }
785
- });
786
- }
787
- }
788
- focusNextElement(targetElement, shiftKey, busyEl) {
789
- const focussable = this.getFocussableElements();
790
- // If shift tab, go in the other direction
791
- const modifier = shiftKey ? -1 : 1;
792
- // Find the next navigable element that isn't waiting
793
- const startingIndex = focussable.indexOf(targetElement);
794
- let curIndex = startingIndex + modifier;
795
- while (focussable[curIndex] &&
796
- this.isElementHiddenOrCovered(focussable[curIndex])) {
797
- curIndex += modifier;
798
- }
799
- if (focussable[curIndex] &&
800
- !this.isElementHiddenOrCovered(focussable[curIndex])) {
801
- focussable[curIndex].focus();
802
- }
803
- else {
804
- // Try wrapping the navigation
805
- /* istanbul ignore next */
806
- curIndex = modifier > 0 ? 0 : focussable.length - 1;
807
- /* istanbul ignore next */
808
- while (curIndex !== startingIndex &&
809
- focussable[curIndex] &&
810
- this.isElementHiddenOrCovered(focussable[curIndex])) {
811
- curIndex += modifier;
812
- }
813
- /* istanbul ignore else */
814
- /* sanity check */
815
- if (focussable[curIndex] &&
816
- !this.isElementHiddenOrCovered(focussable[curIndex])) {
817
- focussable[curIndex].focus();
818
- }
819
- else {
820
- // No valid target, wipe focus
821
- // This should never happen in practice due to the multiple inline delete buttons
822
- if (document.activeElement && document.activeElement.blur) {
823
- document.activeElement.blur();
824
- }
825
- document.body.focus();
826
- }
827
- }
828
- // clear focussableElements list so that if things change between tabbing we know about it
829
- this.focussableElements = undefined;
830
- }
831
- getFocussableElements() {
832
- // Keep this cached so we can reduce querys
833
- if (this.focussableElements) {
834
- return this.focussableElements;
835
- }
836
- this.focussableElements = this.coreAdapterService.getFocusableChildren(document.body);
837
- return this.focussableElements;
838
- }
839
- isElementHiddenOrCovered(element) {
840
- // Check if the element is hidden by css, not within the inline delete, or a wait is covering it
841
- return (this.isElementHidden(element) ||
842
- (this.parentEl.contains(element) &&
843
- (!this.element.contains(element) ||
844
- this.parentEl.querySelector('.sky-wait-mask') !== null)));
845
- }
846
- isElementHidden(element) {
847
- const style = window.getComputedStyle(element);
848
- return style.display === 'none' || style.visibility === 'hidden';
849
- }
850
- isShift(event) {
851
- // Determine if shift+tab was used based on element order
852
- const elements = this.getFocussableElements().filter((elem) => !this.isElementHidden(elem));
853
- const previousInd = elements.indexOf(event.relatedTarget);
854
- const currentInd = elements.indexOf(event.target);
855
- /* istanbul ignore next */
856
- return (previousInd === currentInd + 1 ||
857
- (previousInd === 0 && currentInd === elements.length - 1) ||
858
- previousInd > currentInd ||
859
- !event.relatedTarget);
860
- }
861
- }
862
- SkyInlineDeleteAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyInlineDeleteAdapterService, deps: [{ token: i1.SkyCoreAdapterService }, { token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable });
863
- SkyInlineDeleteAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyInlineDeleteAdapterService });
864
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyInlineDeleteAdapterService, decorators: [{
865
- type: Injectable
866
- }], ctorParameters: function () { return [{ type: i1.SkyCoreAdapterService }, { type: i0.RendererFactory2 }]; } });
867
-
868
- /**
869
- * Specifies the type of inline delete that is shown.
870
- * @internal
871
- */
872
- var SkyInlineDeleteType;
873
- (function (SkyInlineDeleteType) {
874
- /**
875
- * The standard styling for inline deletes.
876
- */
877
- SkyInlineDeleteType["Standard"] = "standard";
878
- /**
879
- * The styling for inline delete components which are used in card components.
880
- */
881
- SkyInlineDeleteType["Card"] = "card";
882
- })(SkyInlineDeleteType || (SkyInlineDeleteType = {}));
883
-
884
- /**
885
- * Auto-incrementing integer used to generate unique ids for inline delete components.
886
- */
887
- let nextId$2 = 0;
888
- class SkyInlineDeleteComponent {
889
- constructor(adapterService, changeDetector, elRef) {
890
- this.adapterService = adapterService;
891
- this.changeDetector = changeDetector;
892
- this.elRef = elRef;
893
- /**
894
- * Indicates whether the deletion is pending.
895
- * @default false
896
- */
897
- this.pending = false;
898
- /**
899
- * Fires when users click the cancel button.
900
- */
901
- this.cancelTriggered = new EventEmitter();
902
- /**
903
- * Fires when users click the delete button.
904
- */
905
- this.deleteTriggered = new EventEmitter();
906
- this.animationState = 'shown';
907
- this.assistiveTextId = `sky-inline-delete-assistive-text-${++nextId$2}`;
908
- this.type = SkyInlineDeleteType.Standard;
909
- }
910
- /**
911
- * Initialization lifecycle hook
912
- * @internal
913
- */
914
- ngOnInit() {
915
- this.animationState = 'shown';
916
- }
917
- /**
918
- * Destruction lifecycle hook
919
- * @internal
920
- */
921
- ngOnDestroy() {
922
- this.adapterService.clearListeners();
923
- this.cancelTriggered.complete();
924
- this.deleteTriggered.complete();
925
- }
926
- /**
927
- * @internal
928
- */
929
- onCancelClick() {
930
- this.animationState = 'hidden';
931
- }
932
- /**
933
- * @internal
934
- */
935
- onDeleteClick() {
936
- this.deleteTriggered.emit();
937
- }
938
- /**
939
- * Sets the inline delete to one of its predefined types.
940
- * @param type The inline delete type
941
- * @internal
942
- */
943
- setType(type) {
944
- this.type = type;
945
- this.changeDetector.detectChanges();
946
- }
947
- /**
948
- * Handles actions that should be taken after the inline delete animates
949
- * @param event The animation event
950
- * @internal
951
- */
952
- onAnimationDone(event) {
953
- if (event.toState === 'hidden') {
954
- this.cancelTriggered.emit();
955
- }
956
- else {
957
- this.deleteButton.nativeElement.focus();
958
- /* istanbul ignore else */
959
- if (this.elRef) {
960
- this.adapterService.setEl(this.elRef.nativeElement);
961
- }
962
- }
963
- }
964
- }
965
- SkyInlineDeleteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyInlineDeleteComponent, deps: [{ token: SkyInlineDeleteAdapterService }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
966
- SkyInlineDeleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyInlineDeleteComponent, selector: "sky-inline-delete", inputs: { pending: "pending" }, outputs: { cancelTriggered: "cancelTriggered", deleteTriggered: "deleteTriggered" }, providers: [SkyCoreAdapterService, SkyInlineDeleteAdapterService], viewQueries: [{ propertyName: "deleteButton", first: true, predicate: ["delete"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div\n class=\"sky-inline-delete sky-inline-delete-{{ type }}\"\n role=\"alertdialog\"\n [@inlineDeleteAnimation]=\"animationState\"\n (@inlineDeleteAnimation.done)=\"onAnimationDone($event)\"\n [attr.aria-describedby]=\"assistiveTextId\"\n [attr.aria-label]=\"'skyux_inline_delete_confirm_deletion' | skyLibResources\"\n>\n <span class=\"sky-inline-delete-assistive-text\" [id]=\"assistiveTextId\">\n {{ 'skyux_inline_delete_assistive_text' | skyLibResources }}\n </span>\n <sky-wait class=\"sky-inline-delete-wait\" [isWaiting]=\"pending\"></sky-wait>\n <div class=\"sky-inline-delete-content\">\n <div class=\"sky-inline-delete-content-animation-container\">\n <button\n class=\"sky-btn sky-btn-danger sky-inline-delete-button\"\n type=\"button\"\n (click)=\"onDeleteClick()\"\n #delete\n >\n {{ 'skyux_inline_delete_delete' | skyLibResources }}\n </button>\n <button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"onCancelClick()\"\n >\n {{ 'skyux_inline_delete_cancel' | skyLibResources }}\n </button>\n </div>\n </div>\n</div>\n", styles: [".sky-inline-delete{position:absolute!important;top:0px;left:0px;width:100%;height:100%;background-color:#00000080;z-index:999;border:2px solid #ef4044}.sky-inline-delete-assistive-text{width:0;height:0;padding:0;opacity:0;position:absolute;margin:-1px;border:0;overflow:hidden;clip:rect(0,0,0,0);outline:none;white-space:nowrap}.sky-inline-delete-button{margin-right:10px}.sky-inline-delete-card .sky-inline-delete-content{position:absolute;bottom:10px;text-align:center;width:100%}.sky-inline-delete-standard .sky-inline-delete-content{position:absolute;top:50%;transform:translateY(-50%);left:20px}.sky-inline-delete-wait{height:100%}\n"], components: [{ type: i2$1.λ14, selector: "sky-wait", inputs: ["ariaLabel", "isWaiting", "isFullPage", "isNonBlocking"] }], pipes: { "skyLibResources": i1$1.SkyLibResourcesPipe }, animations: [
967
- trigger('inlineDeleteAnimation', [
968
- transition('* => shown', [
969
- style({
970
- opacity: 0,
971
- }),
972
- query('.sky-inline-delete-content-animation-container', style({ transform: 'scale(0.0)' })),
973
- group([
974
- animate('300ms ease-in-out', style({ opacity: 1 })),
975
- query('.sky-inline-delete-content-animation-container', animate('300ms ease-in-out', style({
976
- transform: 'scale(1)',
977
- }))),
978
- ]),
979
- ]),
980
- transition(`shown <=> *`, [
981
- query('.sky-inline-delete-content-animation-container', style({ transform: 'scale(1)' })),
982
- group([
983
- animate('300ms ease-in-out', style({
984
- opacity: 0,
985
- })),
986
- query('.sky-inline-delete-content-animation-container', animate('300ms ease-in-out', style({
987
- transform: 'scale(0.0)',
988
- }))),
989
- ]),
990
- ]),
991
- ]),
992
- ] });
993
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyInlineDeleteComponent, decorators: [{
994
- type: Component,
995
- args: [{
996
- selector: 'sky-inline-delete',
997
- styleUrls: ['./inline-delete.component.scss'],
998
- templateUrl: './inline-delete.component.html',
999
- animations: [
1000
- trigger('inlineDeleteAnimation', [
1001
- transition('* => shown', [
1002
- style({
1003
- opacity: 0,
1004
- }),
1005
- query('.sky-inline-delete-content-animation-container', style({ transform: 'scale(0.0)' })),
1006
- group([
1007
- animate('300ms ease-in-out', style({ opacity: 1 })),
1008
- query('.sky-inline-delete-content-animation-container', animate('300ms ease-in-out', style({
1009
- transform: 'scale(1)',
1010
- }))),
1011
- ]),
1012
- ]),
1013
- transition(`shown <=> *`, [
1014
- query('.sky-inline-delete-content-animation-container', style({ transform: 'scale(1)' })),
1015
- group([
1016
- animate('300ms ease-in-out', style({
1017
- opacity: 0,
1018
- })),
1019
- query('.sky-inline-delete-content-animation-container', animate('300ms ease-in-out', style({
1020
- transform: 'scale(0.0)',
1021
- }))),
1022
- ]),
1023
- ]),
1024
- ]),
1025
- ],
1026
- providers: [SkyCoreAdapterService, SkyInlineDeleteAdapterService],
1027
- }]
1028
- }], ctorParameters: function () { return [{ type: SkyInlineDeleteAdapterService }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; }, propDecorators: { pending: [{
1029
- type: Input
1030
- }], cancelTriggered: [{
1031
- type: Output
1032
- }], deleteTriggered: [{
1033
- type: Output
1034
- }], deleteButton: [{
1035
- type: ViewChild,
1036
- args: ['delete', {
1037
- read: ElementRef,
1038
- static: false,
1039
- }]
1040
- }] } });
1041
-
1042
- class SkyInlineDeleteModule {
1043
- }
1044
- SkyInlineDeleteModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyInlineDeleteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1045
- SkyInlineDeleteModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyInlineDeleteModule, declarations: [SkyInlineDeleteComponent], imports: [CommonModule,
1046
- SkyI18nModule,
1047
- SkyLayoutResourcesModule,
1048
- SkyWaitModule], exports: [SkyInlineDeleteComponent] });
1049
- SkyInlineDeleteModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyInlineDeleteModule, imports: [[
1050
- CommonModule,
1051
- SkyI18nModule,
1052
- SkyLayoutResourcesModule,
1053
- SkyWaitModule,
1054
- ]] });
1055
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyInlineDeleteModule, decorators: [{
1056
- type: NgModule,
1057
- args: [{
1058
- declarations: [SkyInlineDeleteComponent],
1059
- imports: [
1060
- CommonModule,
1061
- SkyI18nModule,
1062
- SkyLayoutResourcesModule,
1063
- SkyWaitModule,
1064
- ],
1065
- exports: [SkyInlineDeleteComponent],
1066
- }]
1067
- }] });
1068
-
1069
- /**
1070
- * Specifies an action that users can perform on the card.
1071
- */
1072
- class SkyCardActionsComponent {
1073
- }
1074
- SkyCardActionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyCardActionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1075
- SkyCardActionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyCardActionsComponent, selector: "sky-card-actions", ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:block;border-top:1px solid #e2e3e4;padding:7px 0}\n"] });
1076
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyCardActionsComponent, decorators: [{
1077
- type: Component,
1078
- args: [{
1079
- selector: 'sky-card-actions',
1080
- templateUrl: './card-actions.component.html',
1081
- styleUrls: ['./card-actions.component.scss'],
1082
- }]
1083
- }] });
1084
-
1085
- /**
1086
- * Specifies the content to display in the body of the card.
1087
- */
1088
- class SkyCardContentComponent {
1089
- }
1090
- SkyCardContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyCardContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1091
- SkyCardContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyCardContentComponent, selector: "sky-card-content", ngImport: i0, template: "<ng-content></ng-content>\n" });
1092
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyCardContentComponent, decorators: [{
1093
- type: Component,
1094
- args: [{
1095
- selector: 'sky-card-content',
1096
- templateUrl: './card-content.component.html',
1097
- }]
1098
- }] });
1099
-
1100
- /**
1101
- * Specifies a title to identify what the card represents.
1102
- */
1103
- class SkyCardTitleComponent {
1104
- }
1105
- SkyCardTitleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyCardTitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1106
- SkyCardTitleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyCardTitleComponent, selector: "sky-card-title", ngImport: i0, template: "<ng-content></ng-content>\n" });
1107
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyCardTitleComponent, decorators: [{
1108
- type: Component,
1109
- args: [{
1110
- selector: 'sky-card-title',
1111
- templateUrl: './card-title.component.html',
1112
- }]
1113
- }] });
1114
-
1115
- /**
1116
- * Creates a a small container to highlight important information.
1117
- */
1118
- class SkyCardComponent {
1119
- constructor() {
1120
- /**
1121
- * Fires when users select or deselect the card.
1122
- */
1123
- this.selectedChange = new EventEmitter();
1124
- this.showTitle = true;
1125
- }
1126
- ngAfterContentInit() {
1127
- this.showTitle = this.titleComponent.length > 0;
1128
- this.subscription = this.titleComponent.changes.subscribe(() => {
1129
- this.showTitle = this.titleComponent.length > 0;
1130
- });
1131
- this.inlineDeleteComponent.forEach((item) => {
1132
- item.setType(SkyInlineDeleteType.Card);
1133
- });
1134
- this.inlineDeleteComponent.changes.subscribe(() => {
1135
- this.inlineDeleteComponent.forEach((item) => {
1136
- item.setType(SkyInlineDeleteType.Card);
1137
- });
1138
- });
1139
- }
1140
- contentClick() {
1141
- if (this.selectable) {
1142
- this.selected = !this.selected;
1143
- this.selectedChange.emit(this.selected);
1144
- }
1145
- }
1146
- onCheckboxChange(newValue) {
1147
- if (this.selectable && this.selected !== newValue) {
1148
- this.selected = newValue;
1149
- this.selectedChange.emit(this.selected);
1150
- }
1151
- }
1152
- ngOnDestroy() {
1153
- /* istanbul ignore else */
1154
- /* sanity check */
1155
- if (this.subscription) {
1156
- this.subscription.unsubscribe();
1157
- }
1158
- }
1159
- }
1160
- SkyCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1161
- SkyCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyCardComponent, selector: "sky-card", inputs: { size: "size", selectable: "selectable", selected: "selected" }, outputs: { selectedChange: "selectedChange" }, queries: [{ propertyName: "inlineDeleteComponent", predicate: SkyInlineDeleteComponent }, { propertyName: "titleComponent", predicate: SkyCardTitleComponent }], ngImport: i0, template: "<section\n class=\"sky-card sky-shadow\"\n [ngClass]=\"\n {\n 'sky-card-small': size === 'small',\n 'sky-card-selectable': selectable,\n 'sky-card-selected': selectable &amp;&amp; selected\n }\"\n>\n <ng-content select=\"sky-inline-delete\"></ng-content>\n <header>\n <div\n *ngIf=\"selectable || showTitle\"\n class=\"sky-card-header\"\n (click)=\"contentClick()\"\n >\n <div class=\"sky-card-heading-middle\">\n <h1 *ngIf=\"showTitle\" class=\"sky-card-title sky-section-heading\">\n <ng-content select=\"sky-card-title\"></ng-content>\n </h1>\n </div>\n <div *ngIf=\"selectable\" class=\"sky-card-check\">\n <sky-checkbox\n [label]=\"'skyux_card_checkbox_label' | skyLibResources\"\n [ngModel]=\"selected\"\n (click)=\"$event.stopPropagation()\"\n (ngModelChange)=\"onCheckboxChange($event)\"\n ></sky-checkbox>\n </div>\n </div>\n </header>\n <div\n class=\"sky-card-content sky-padding-even-default\"\n (click)=\"contentClick()\"\n >\n <ng-content select=\"sky-card-content\"></ng-content>\n </div>\n <div\n class=\"sky-card-actions\"\n [hidden]=\"actionsEl.children.length === 0\"\n #actionsEl\n >\n <ng-content select=\"sky-card-actions\"></ng-content>\n </div>\n</section>\n", styles: [".sky-card{background-color:#fff;border-top:1px solid #cdcfd2;border-bottom:1px solid #cdcfd2;border-left:1px solid #cdcfd2;border-right:1px solid #cdcfd2;display:inline-flex;flex-direction:column;height:350px;margin:0 10px 10px 0;transition:background-color .15s;vertical-align:top;width:350px;position:relative}.sky-card-small{height:250px;width:225px}.sky-card-selectable .sky-card-header,.sky-card-selectable .sky-card-content{cursor:pointer}.sky-card-selected{background-color:#f1eef6;transition:background-color .15s}.sky-card-header{align-items:center;display:flex;flex-shrink:0;margin:0;padding:10px 0 0}.sky-card-heading-left,.sky-card-heading-right{font-weight:normal;max-width:34px}.sky-card-heading-left{padding-left:10px}.sky-card-heading-right{padding-right:10px}.sky-card-heading-middle{flex-grow:1;padding:0 10px;overflow:hidden}.sky-card-title{margin:0;line-height:1.428571429}.sky-card-check{flex-shrink:0;padding-right:10px}.sky-card-check .sky-check-wrapper{margin-bottom:2px}.sky-card-content{flex-grow:1;font-weight:normal;margin:0;overflow:hidden}.sky-card-actions{bottom:0;flex-shrink:0;text-align:center}.sky-card-actions .sky-context-menu-btn{height:32px;width:32px}\n"], components: [{ type: i1$2.λ3, selector: "sky-checkbox", inputs: ["label", "labelledBy", "id", "disabled", "tabindex", "name", "icon", "checkboxType", "checked", "required"], outputs: ["change", "checkedChange", "disabledChange"] }], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i3$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "skyLibResources": i1$1.SkyLibResourcesPipe } });
1162
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyCardComponent, decorators: [{
1163
- type: Component,
1164
- args: [{
1165
- selector: 'sky-card',
1166
- styleUrls: ['./card.component.scss'],
1167
- templateUrl: './card.component.html',
1168
- }]
1169
- }], propDecorators: { size: [{
1170
- type: Input
1171
- }], selectable: [{
1172
- type: Input
1173
- }], selected: [{
1174
- type: Input
1175
- }], selectedChange: [{
1176
- type: Output
1177
- }], inlineDeleteComponent: [{
1178
- type: ContentChildren,
1179
- args: [SkyInlineDeleteComponent]
1180
- }], titleComponent: [{
1181
- type: ContentChildren,
1182
- args: [SkyCardTitleComponent]
1183
- }] } });
1184
-
1185
- class SkyCardModule {
1186
- }
1187
- SkyCardModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyCardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1188
- SkyCardModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyCardModule, declarations: [SkyCardActionsComponent,
1189
- SkyCardComponent,
1190
- SkyCardContentComponent,
1191
- SkyCardTitleComponent], imports: [CommonModule,
1192
- FormsModule,
1193
- SkyCheckboxModule,
1194
- SkyI18nModule,
1195
- SkyLayoutResourcesModule,
1196
- SkyInlineDeleteModule], exports: [SkyCardActionsComponent,
1197
- SkyCardComponent,
1198
- SkyCardContentComponent,
1199
- SkyCardTitleComponent] });
1200
- SkyCardModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyCardModule, imports: [[
1201
- CommonModule,
1202
- FormsModule,
1203
- SkyCheckboxModule,
1204
- SkyI18nModule,
1205
- SkyLayoutResourcesModule,
1206
- SkyInlineDeleteModule,
1207
- ]] });
1208
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyCardModule, decorators: [{
1209
- type: NgModule,
1210
- args: [{
1211
- declarations: [
1212
- SkyCardActionsComponent,
1213
- SkyCardComponent,
1214
- SkyCardContentComponent,
1215
- SkyCardTitleComponent,
1216
- ],
1217
- imports: [
1218
- CommonModule,
1219
- FormsModule,
1220
- SkyCheckboxModule,
1221
- SkyI18nModule,
1222
- SkyLayoutResourcesModule,
1223
- SkyInlineDeleteModule,
1224
- ],
1225
- exports: [
1226
- SkyCardActionsComponent,
1227
- SkyCardComponent,
1228
- SkyCardContentComponent,
1229
- SkyCardTitleComponent,
1230
- ],
1231
- }]
1232
- }] });
1233
-
1234
- /**
1235
- * Wraps the label-value pairs in the definition list.
1236
- */
1237
- class SkyDefinitionListContentComponent {
1238
- }
1239
- SkyDefinitionListContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDefinitionListContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1240
- SkyDefinitionListContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyDefinitionListContentComponent, selector: "sky-definition-list-content", ngImport: i0, template: "<div class=\"sky-definition-list-content\">\n <ng-content></ng-content>\n</div>\n", styles: [".sky-definition-list-content{display:flex;flex-wrap:wrap;margin-bottom:5px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1241
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDefinitionListContentComponent, decorators: [{
1242
- type: Component,
1243
- args: [{
1244
- selector: 'sky-definition-list-content',
1245
- templateUrl: './definition-list-content.component.html',
1246
- styleUrls: ['./definition-list-content.component.scss'],
1247
- changeDetection: ChangeDetectionStrategy.OnPush,
1248
- }]
1249
- }] });
1250
-
1251
- /**
1252
- * Specifies a title for the definition list.
1253
- */
1254
- class SkyDefinitionListHeadingComponent {
1255
- }
1256
- SkyDefinitionListHeadingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDefinitionListHeadingComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1257
- SkyDefinitionListHeadingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyDefinitionListHeadingComponent, selector: "sky-definition-list-heading", ngImport: i0, template: "<div class=\"sky-subsection-heading sky-definition-list-heading\">\n <ng-content></ng-content>\n</div>\n", styles: [".sky-definition-list-heading{margin-bottom:5px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1258
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDefinitionListHeadingComponent, decorators: [{
1259
- type: Component,
1260
- args: [{
1261
- selector: 'sky-definition-list-heading',
1262
- templateUrl: './definition-list-heading.component.html',
1263
- styleUrls: ['./definition-list-heading.component.scss'],
1264
- changeDetection: ChangeDetectionStrategy.OnPush,
1265
- }]
1266
- }] });
1267
-
1268
- /**
1269
- * @internal
1270
- */
1271
- class SkyDefinitionListService {
1272
- constructor() {
1273
- this.labelWidth = new BehaviorSubject('');
1274
- this.defaultValue = new BehaviorSubject('');
1275
- }
1276
- }
1277
- SkyDefinitionListService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDefinitionListService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1278
- SkyDefinitionListService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDefinitionListService });
1279
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDefinitionListService, decorators: [{
1280
- type: Injectable
1281
- }] });
1282
-
1283
- /**
1284
- * Specifies the label in a label-value pair.
1285
- */
1286
- class SkyDefinitionListLabelComponent {
1287
- constructor(service) {
1288
- this.service = service;
1289
- }
1290
- }
1291
- SkyDefinitionListLabelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDefinitionListLabelComponent, deps: [{ token: SkyDefinitionListService }], target: i0.ɵɵFactoryTarget.Component });
1292
- SkyDefinitionListLabelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyDefinitionListLabelComponent, selector: "sky-definition-list-label", ngImport: i0, template: "<div\n class=\"sky-field-label sky-definition-list-label\"\n [ngStyle]=\"{\n width: (service.labelWidth | async) || ''\n }\"\n>\n <ng-content></ng-content>\n</div>\n", styles: [":host{flex:0 0 90px}.sky-definition-list-label{margin-right:10px;word-wrap:break-word}\n"], directives: [{ type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], pipes: { "async": i3.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1293
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDefinitionListLabelComponent, decorators: [{
1294
- type: Component,
1295
- args: [{
1296
- selector: 'sky-definition-list-label',
1297
- templateUrl: './definition-list-label.component.html',
1298
- styleUrls: ['./definition-list-label.component.scss'],
1299
- changeDetection: ChangeDetectionStrategy.OnPush,
1300
- }]
1301
- }], ctorParameters: function () { return [{ type: SkyDefinitionListService }]; } });
1302
-
1303
- /**
1304
- * Specifies the value in a label-value pair.
1305
- */
1306
- class SkyDefinitionListValueComponent {
1307
- constructor(service) {
1308
- this.service = service;
1309
- }
1310
- }
1311
- SkyDefinitionListValueComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDefinitionListValueComponent, deps: [{ token: SkyDefinitionListService }], target: i0.ɵɵFactoryTarget.Component });
1312
- SkyDefinitionListValueComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyDefinitionListValueComponent, selector: "sky-definition-list-value", ngImport: i0, template: "<div class=\"sky-definition-list-value\">\n <span #valueEl>\n <ng-content></ng-content>\n </span>\n <span class=\"sky-deemphasized\" *ngIf=\"!valueEl.textContent.trim()\">\n {{\n (service.defaultValue | async) ||\n ('skyux_definition_list_none_found' | skyLibResources)\n }}\n </span>\n</div>\n", styles: [":host{flex:1}\n"], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i3.AsyncPipe, "skyLibResources": i1$1.SkyLibResourcesPipe } });
1313
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDefinitionListValueComponent, decorators: [{
1314
- type: Component,
1315
- args: [{
1316
- selector: 'sky-definition-list-value',
1317
- templateUrl: './definition-list-value.component.html',
1318
- styleUrls: ['./definition-list-value.component.scss'],
1319
- }]
1320
- }], ctorParameters: function () { return [{ type: SkyDefinitionListService }]; } });
1321
-
1322
- /**
1323
- * Creates a definition list to display label-value pairs.
1324
- */
1325
- class SkyDefinitionListComponent {
1326
- constructor(service) {
1327
- this.service = service;
1328
- }
1329
- /**
1330
- * Specifies the width of the label portion of the definition list.
1331
- * @default "90px"
1332
- */
1333
- set labelWidth(value) {
1334
- this.service.labelWidth.next(value);
1335
- }
1336
- /**
1337
- * Specifies a default value to display when no value is provided
1338
- * for a label-value pair.
1339
- * @default "None found"
1340
- */
1341
- set defaultValue(value) {
1342
- this.service.defaultValue.next(value);
1343
- }
1344
- }
1345
- SkyDefinitionListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDefinitionListComponent, deps: [{ token: SkyDefinitionListService }], target: i0.ɵɵFactoryTarget.Component });
1346
- SkyDefinitionListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyDefinitionListComponent, selector: "sky-definition-list", inputs: { labelWidth: "labelWidth", defaultValue: "defaultValue" }, providers: [SkyDefinitionListService], ngImport: i0, template: "<div class=\"sky-definition-list\">\n <ng-content select=\"sky-definition-list-heading\"></ng-content>\n <ng-content select=\"sky-definition-list-content\"></ng-content>\n</div>\n", styles: [".sky-definition-list{margin-right:50px;margin-bottom:20px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1347
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDefinitionListComponent, decorators: [{
1348
- type: Component,
1349
- args: [{
1350
- selector: 'sky-definition-list',
1351
- templateUrl: './definition-list.component.html',
1352
- styleUrls: ['./definition-list.component.scss'],
1353
- providers: [SkyDefinitionListService],
1354
- changeDetection: ChangeDetectionStrategy.OnPush,
1355
- }]
1356
- }], ctorParameters: function () { return [{ type: SkyDefinitionListService }]; }, propDecorators: { labelWidth: [{
1357
- type: Input
1358
- }], defaultValue: [{
1359
- type: Input
1360
- }] } });
1361
-
1362
- class SkyDefinitionListModule {
1363
- }
1364
- SkyDefinitionListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDefinitionListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1365
- SkyDefinitionListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDefinitionListModule, declarations: [SkyDefinitionListComponent,
1366
- SkyDefinitionListContentComponent,
1367
- SkyDefinitionListHeadingComponent,
1368
- SkyDefinitionListLabelComponent,
1369
- SkyDefinitionListValueComponent], imports: [CommonModule, SkyI18nModule, SkyLayoutResourcesModule], exports: [SkyDefinitionListComponent,
1370
- SkyDefinitionListContentComponent,
1371
- SkyDefinitionListHeadingComponent,
1372
- SkyDefinitionListLabelComponent,
1373
- SkyDefinitionListValueComponent] });
1374
- SkyDefinitionListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDefinitionListModule, imports: [[CommonModule, SkyI18nModule, SkyLayoutResourcesModule]] });
1375
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDefinitionListModule, decorators: [{
1376
- type: NgModule,
1377
- args: [{
1378
- declarations: [
1379
- SkyDefinitionListComponent,
1380
- SkyDefinitionListContentComponent,
1381
- SkyDefinitionListHeadingComponent,
1382
- SkyDefinitionListLabelComponent,
1383
- SkyDefinitionListValueComponent,
1384
- ],
1385
- imports: [CommonModule, SkyI18nModule, SkyLayoutResourcesModule],
1386
- exports: [
1387
- SkyDefinitionListComponent,
1388
- SkyDefinitionListContentComponent,
1389
- SkyDefinitionListHeadingComponent,
1390
- SkyDefinitionListLabelComponent,
1391
- SkyDefinitionListValueComponent,
1392
- ],
1393
- }]
1394
- }] });
1395
-
1396
- /**
1397
- * @internal
1398
- */
1399
- class SkyDescriptionListService {
1400
- constructor() {
1401
- this._defaultDescription = new BehaviorSubject('');
1402
- }
1403
- get defaultDescription() {
1404
- return this._defaultDescription.asObservable();
1405
- }
1406
- ngOnDestroy() {
1407
- this._defaultDescription.complete();
1408
- }
1409
- updateDefaultDescription(value) {
1410
- this._defaultDescription.next(value);
1411
- }
1412
- }
1413
- SkyDescriptionListService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDescriptionListService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1414
- SkyDescriptionListService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDescriptionListService });
1415
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDescriptionListService, decorators: [{
1416
- type: Injectable
1417
- }] });
1418
-
1419
- /**
1420
- * Specifies the description in a term-description pair.
1421
- */
1422
- class SkyDescriptionListDescriptionComponent {
1423
- constructor(service, changeRef, themeSvc) {
1424
- this.service = service;
1425
- this.changeRef = changeRef;
1426
- this.themeSvc = themeSvc;
1427
- this.ngUnsubscribe = new Subject();
1428
- }
1429
- ngOnInit() {
1430
- /* istanbul ignore else */
1431
- if (this.themeSvc) {
1432
- this.themeSvc.settingsChange
1433
- .pipe(takeUntil(this.ngUnsubscribe))
1434
- .subscribe((themeSettings) => {
1435
- this.themeName = themeSettings.currentSettings.theme.name;
1436
- this.changeRef.markForCheck();
1437
- });
1438
- }
1439
- }
1440
- ngOnDestroy() {
1441
- this.ngUnsubscribe.next();
1442
- this.ngUnsubscribe.complete();
1443
- }
1444
- }
1445
- SkyDescriptionListDescriptionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDescriptionListDescriptionComponent, deps: [{ token: SkyDescriptionListService }, { token: i0.ChangeDetectorRef }, { token: i3$1.SkyThemeService }], target: i0.ɵɵFactoryTarget.Component });
1446
- SkyDescriptionListDescriptionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyDescriptionListDescriptionComponent, selector: "sky-description-list-description", viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["descriptionTemplateRef"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: "<ng-template #descriptionTemplateRef>\n <span #valueEl>\n <ng-content></ng-content>\n </span>\n <span\n *ngIf=\"!valueEl.textContent.trim()\"\n data-sky-id=\"sky-description-list-default-value\"\n [skyThemeClass]=\"{\n 'sky-font-deemphasized': 'modern',\n 'sky-deemphasized': 'default'\n }\"\n >\n {{\n (service.defaultDescription | async) ||\n ('skyux_description_list_none_found' | skyLibResources)\n }}\n </span>\n</ng-template>\n", directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3$1.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }], pipes: { "async": i3.AsyncPipe, "skyLibResources": i1$1.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1447
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDescriptionListDescriptionComponent, decorators: [{
1448
- type: Component,
1449
- args: [{
1450
- selector: 'sky-description-list-description',
1451
- templateUrl: './description-list-description.component.html',
1452
- changeDetection: ChangeDetectionStrategy.OnPush,
1453
- }]
1454
- }], ctorParameters: function () { return [{ type: SkyDescriptionListService }, { type: i0.ChangeDetectorRef }, { type: i3$1.SkyThemeService }]; }, propDecorators: { templateRef: [{
1455
- type: ViewChild,
1456
- args: ['descriptionTemplateRef', {
1457
- read: TemplateRef,
1458
- static: true,
1459
- }]
1460
- }] } });
1461
-
1462
- /**
1463
- * Specifies the term in a term-description pair.
1464
- */
1465
- class SkyDescriptionListTermComponent {
1466
- }
1467
- SkyDescriptionListTermComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDescriptionListTermComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1468
- SkyDescriptionListTermComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyDescriptionListTermComponent, selector: "sky-description-list-term", viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["termTemplateRef"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: "<ng-template #termTemplateRef>\n <ng-content></ng-content>\n</ng-template>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
1469
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDescriptionListTermComponent, decorators: [{
1470
- type: Component,
1471
- args: [{
1472
- selector: 'sky-description-list-term',
1473
- templateUrl: './description-list-term.component.html',
1474
- changeDetection: ChangeDetectionStrategy.OnPush,
1475
- }]
1476
- }], propDecorators: { templateRef: [{
1477
- type: ViewChild,
1478
- args: ['termTemplateRef', {
1479
- read: TemplateRef,
1480
- static: true,
1481
- }]
1482
- }] } });
1483
-
1484
- /**
1485
- * Wraps the term-description pairs in the description list.
1486
- */
1487
- class SkyDescriptionListContentComponent {
1488
- }
1489
- SkyDescriptionListContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDescriptionListContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1490
- SkyDescriptionListContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyDescriptionListContentComponent, selector: "sky-description-list-content", queries: [{ propertyName: "termComponents", predicate: SkyDescriptionListTermComponent }, { propertyName: "descriptionComponents", predicate: SkyDescriptionListDescriptionComponent }], ngImport: i0, template: "<ng-content></ng-content>\n" });
1491
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDescriptionListContentComponent, decorators: [{
1492
- type: Component,
1493
- args: [{
1494
- selector: 'sky-description-list-content',
1495
- templateUrl: './description-list-content.component.html',
1496
- }]
1497
- }], propDecorators: { termComponents: [{
1498
- type: ContentChildren,
1499
- args: [SkyDescriptionListTermComponent]
1500
- }], descriptionComponents: [{
1501
- type: ContentChildren,
1502
- args: [SkyDescriptionListDescriptionComponent]
1503
- }] } });
1504
-
1505
- /**
1506
- * @internal
1507
- */
1508
- class SkyDescriptionListAdapterService {
1509
- constructor(rendererFactory) {
1510
- this.renderer = rendererFactory.createRenderer(undefined, undefined);
1511
- }
1512
- getWidth(elementRef) {
1513
- return elementRef.nativeElement.clientWidth;
1514
- }
1515
- setResponsiveClass(element) {
1516
- const nativeEl = element.nativeElement;
1517
- const width = this.getWidth(element);
1518
- const className = this.getResponsiveClassName(width);
1519
- this.renderer.removeClass(nativeEl, 'sky-responsive-container-xs');
1520
- this.renderer.removeClass(nativeEl, 'sky-responsive-container-sm');
1521
- this.renderer.removeClass(nativeEl, 'sky-responsive-container-md');
1522
- this.renderer.addClass(nativeEl, className);
1523
- }
1524
- getResponsiveClassName(width) {
1525
- const xsBreakpointMaxPixels = 479;
1526
- const smBreakpointMinPixels = 480;
1527
- const smBreakpointMaxPixels = 767;
1528
- if (width <= xsBreakpointMaxPixels) {
1529
- return 'sky-responsive-container-xs';
1530
- }
1531
- else if (width >= smBreakpointMinPixels &&
1532
- width <= smBreakpointMaxPixels) {
1533
- return 'sky-responsive-container-sm';
1534
- }
1535
- else {
1536
- return 'sky-responsive-container-md';
1537
- }
1538
- }
1539
- }
1540
- SkyDescriptionListAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDescriptionListAdapterService, deps: [{ token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable });
1541
- SkyDescriptionListAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDescriptionListAdapterService });
1542
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDescriptionListAdapterService, decorators: [{
1543
- type: Injectable
1544
- }], ctorParameters: function () { return [{ type: i0.RendererFactory2 }]; } });
1545
-
1546
- /**
1547
- * Creates a description list to display term-description pairs.
1548
- */
1549
- class SkyDescriptionListComponent {
1550
- constructor(adapterService, changeDetector, descriptionListService, mutationSvc) {
1551
- this.adapterService = adapterService;
1552
- this.changeDetector = changeDetector;
1553
- this.descriptionListService = descriptionListService;
1554
- this.mutationSvc = mutationSvc;
1555
- this.ngUnsubscribe = new Subject();
1556
- }
1557
- /**
1558
- * Specifies a default description to display when no description is provided
1559
- * for a term-description pair.
1560
- * @default "None found"
1561
- */
1562
- set defaultDescription(value) {
1563
- this.descriptionListService.updateDefaultDescription(value);
1564
- }
1565
- /**
1566
- * Specifies how to display term-description pairs within the description list.
1567
- * Options include `"horizontal"`, `"longDescription"`, and `"vertical"`.
1568
- * @default "vertical"
1569
- */
1570
- set mode(value) {
1571
- this._mode = value;
1572
- }
1573
- get mode() {
1574
- return this._mode || 'vertical';
1575
- }
1576
- ngAfterContentInit() {
1577
- // Wait for all content to render before detecting parent width.
1578
- setTimeout(() => {
1579
- this.updateResponsiveClass();
1580
- });
1581
- this.contentComponents.changes
1582
- .pipe(takeUntil(this.ngUnsubscribe))
1583
- .subscribe(() => {
1584
- this.changeDetector.markForCheck();
1585
- });
1586
- }
1587
- ngAfterViewInit() {
1588
- this.contentObserver = this.mutationSvc.create(() => {
1589
- this.changeDetector.markForCheck();
1590
- });
1591
- this.contentObserver.observe(this.elementRef.nativeElement, {
1592
- childList: true,
1593
- characterData: true,
1594
- subtree: true,
1595
- });
1596
- }
1597
- ngOnDestroy() {
1598
- this.ngUnsubscribe.next();
1599
- this.ngUnsubscribe.complete();
1600
- this.contentObserver.disconnect();
1601
- }
1602
- onWindowResize() {
1603
- this.updateResponsiveClass();
1604
- }
1605
- updateResponsiveClass() {
1606
- this.adapterService.setResponsiveClass(this.elementRef);
1607
- this.changeDetector.markForCheck();
1608
- }
1609
- }
1610
- SkyDescriptionListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDescriptionListComponent, deps: [{ token: SkyDescriptionListAdapterService }, { token: i0.ChangeDetectorRef }, { token: SkyDescriptionListService }, { token: i1.MutationObserverService }], target: i0.ɵɵFactoryTarget.Component });
1611
- SkyDescriptionListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyDescriptionListComponent, selector: "sky-description-list", inputs: { defaultDescription: "defaultDescription", listItemWidth: "listItemWidth", mode: "mode" }, host: { listeners: { "window:resize": "onWindowResize()" } }, providers: [SkyDescriptionListAdapterService, SkyDescriptionListService], queries: [{ propertyName: "contentComponents", predicate: SkyDescriptionListContentComponent }], viewQueries: [{ propertyName: "elementRef", first: true, predicate: ["descriptionListElement"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<dl\n class=\"sky-description-list\"\n [ngClass]=\"{\n 'sky-description-list-long-description-mode': mode === 'longDescription',\n 'sky-description-list-vertical-mode': mode === 'vertical',\n 'sky-description-list-horizontal-mode': mode === 'horizontal'\n }\"\n #descriptionListElement\n>\n <!--\n Wrapping div is for horizontal flexing. Also injecting children's templateRef directly\n to avoid adding non-semantic HTML tags to DOM\n -->\n <div\n *ngFor=\"let contentComponent of contentComponents\"\n class=\"sky-description-list-content\"\n [style.width]=\"mode === 'horizontal' ? listItemWidth : ''\"\n >\n <dt *ngFor=\"let termComponent of contentComponent?.termComponents\">\n <ng-container\n *ngTemplateOutlet=\"termComponent.templateRef\"\n ></ng-container>\n </dt>\n <dd\n *ngFor=\"\n let descriptionComponent of contentComponent?.descriptionComponents\n \"\n >\n <ng-container\n *ngTemplateOutlet=\"descriptionComponent.templateRef\"\n ></ng-container>\n </dd>\n </div>\n</dl>\n", styles: [".sky-description-list{margin:0;padding:0}.sky-description-list dt{color:#686c73;font-size:14px;font-weight:400;margin:0 0 3px;padding:0}.sky-description-list dd{margin:0;padding:0}.sky-description-list.sky-description-list-vertical-mode .sky-description-list-content{margin:0 0 15px;width:auto}.sky-description-list.sky-description-list-horizontal-mode{display:flex;flex-wrap:wrap}.sky-description-list.sky-description-list-horizontal-mode .sky-description-list-content{margin:0 0 15px;padding:0 60px 0 0;min-width:100px;width:auto}.sky-description-list.sky-description-list-horizontal-mode.sky-responsive-container-xs .sky-description-list-content,.sky-description-list.sky-description-list-horizontal-mode.sky-responsive-container-sm .sky-description-list-content{width:50%}.sky-description-list.sky-description-list-long-description-mode .sky-description-list-content{display:flex}.sky-description-list.sky-description-list-long-description-mode .sky-description-list-content:not(:last-child){margin:0 0 10px}.sky-description-list.sky-description-list-long-description-mode .sky-description-list-content dt{color:#212327;font-size:16px;font-weight:600;margin:0 20px 0 0;width:25%;word-break:break-word}.sky-description-list.sky-description-list-long-description-mode .sky-description-list-content dd{flex:1}.sky-description-list.sky-description-list-long-description-mode.sky-responsive-container-xs .sky-description-list-content{flex-direction:column}.sky-description-list.sky-description-list-long-description-mode.sky-responsive-container-xs .sky-description-list-content dt{margin:0 0 3px;width:100%}.sky-description-list.sky-description-list-long-description-mode.sky-responsive-container-xs .sky-description-list-content dd{margin:0 0 10px}:host-context(.sky-theme-modern) .sky-description-list.sky-description-list-vertical-mode .sky-description-list-content{margin:0 0 20px}:host-context(.sky-theme-modern) .sky-description-list.sky-description-list-vertical-mode dt{color:#686c73;font-size:14px;font-weight:400}:host-context(.sky-theme-modern) .sky-description-list.sky-description-list-vertical-mode dd{font-size:16px;font-weight:400}:host-context(.sky-theme-modern) .sky-description-list.sky-description-list-horizontal-mode{margin:0 0 -20px}:host-context(.sky-theme-modern) .sky-description-list.sky-description-list-horizontal-mode .sky-description-list-content{margin:0 0 20px}:host-context(.sky-theme-modern) .sky-description-list.sky-description-list-long-description-mode dt{color:inherit;font-weight:700;font-size:inherit}:host-context(.sky-theme-modern) .sky-description-list.sky-description-list-long-description-mode dd{font-size:16px;font-weight:400}:host-context(.sky-theme-modern) .sky-description-list.sky-description-list-long-description-mode.sky-responsive-container-xs dt{margin:0 0 5px}:host-context(.sky-theme-modern) .sky-description-list.sky-description-list-long-description-mode.sky-responsive-container-xs dd{margin:0 0 20px}.sky-theme-modern .sky-description-list.sky-description-list-vertical-mode .sky-description-list-content{margin:0 0 20px}.sky-theme-modern .sky-description-list.sky-description-list-vertical-mode dt{color:#686c73;font-size:14px;font-weight:400}.sky-theme-modern .sky-description-list.sky-description-list-vertical-mode dd{font-size:16px;font-weight:400}.sky-theme-modern .sky-description-list.sky-description-list-horizontal-mode{margin:0 0 -20px}.sky-theme-modern .sky-description-list.sky-description-list-horizontal-mode .sky-description-list-content{margin:0 0 20px}.sky-theme-modern .sky-description-list.sky-description-list-long-description-mode dt{color:inherit;font-weight:700;font-size:inherit}.sky-theme-modern .sky-description-list.sky-description-list-long-description-mode dd{font-size:16px;font-weight:400}.sky-theme-modern .sky-description-list.sky-description-list-long-description-mode.sky-responsive-container-xs dt{margin:0 0 5px}.sky-theme-modern .sky-description-list.sky-description-list-long-description-mode.sky-responsive-container-xs dd{margin:0 0 20px}\n"], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1612
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDescriptionListComponent, decorators: [{
1613
- type: Component,
1614
- args: [{
1615
- selector: 'sky-description-list',
1616
- templateUrl: './description-list.component.html',
1617
- styleUrls: ['./description-list.component.scss'],
1618
- providers: [SkyDescriptionListAdapterService, SkyDescriptionListService],
1619
- changeDetection: ChangeDetectionStrategy.OnPush,
1620
- }]
1621
- }], ctorParameters: function () { return [{ type: SkyDescriptionListAdapterService }, { type: i0.ChangeDetectorRef }, { type: SkyDescriptionListService }, { type: i1.MutationObserverService }]; }, propDecorators: { defaultDescription: [{
1622
- type: Input
1623
- }], listItemWidth: [{
1624
- type: Input
1625
- }], mode: [{
1626
- type: Input
1627
- }], contentComponents: [{
1628
- type: ContentChildren,
1629
- args: [SkyDescriptionListContentComponent]
1630
- }], elementRef: [{
1631
- type: ViewChild,
1632
- args: ['descriptionListElement', {
1633
- read: ElementRef,
1634
- static: true,
1635
- }]
1636
- }], onWindowResize: [{
1637
- type: HostListener,
1638
- args: ['window:resize']
1639
- }] } });
1640
-
1641
- class SkyDescriptionListModule {
1642
- }
1643
- SkyDescriptionListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDescriptionListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1644
- SkyDescriptionListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDescriptionListModule, declarations: [SkyDescriptionListComponent,
1645
- SkyDescriptionListContentComponent,
1646
- SkyDescriptionListTermComponent,
1647
- SkyDescriptionListDescriptionComponent], imports: [CommonModule,
1648
- SkyI18nModule,
1649
- SkyLayoutResourcesModule,
1650
- SkyThemeModule], exports: [SkyDescriptionListComponent,
1651
- SkyDescriptionListContentComponent,
1652
- SkyDescriptionListTermComponent,
1653
- SkyDescriptionListDescriptionComponent] });
1654
- SkyDescriptionListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDescriptionListModule, imports: [[
1655
- CommonModule,
1656
- SkyI18nModule,
1657
- SkyLayoutResourcesModule,
1658
- SkyThemeModule,
1659
- ]] });
1660
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyDescriptionListModule, decorators: [{
1661
- type: NgModule,
1662
- args: [{
1663
- declarations: [
1664
- SkyDescriptionListComponent,
1665
- SkyDescriptionListContentComponent,
1666
- SkyDescriptionListTermComponent,
1667
- SkyDescriptionListDescriptionComponent,
1668
- ],
1669
- imports: [
1670
- CommonModule,
1671
- SkyI18nModule,
1672
- SkyLayoutResourcesModule,
1673
- SkyThemeModule,
1674
- ],
1675
- exports: [
1676
- SkyDescriptionListComponent,
1677
- SkyDescriptionListContentComponent,
1678
- SkyDescriptionListTermComponent,
1679
- SkyDescriptionListDescriptionComponent,
1680
- ],
1681
- }]
1682
- }] });
1683
-
1684
- /**
1685
- * @deprecated Use `SkyDescriptionListModeType` instead.
1686
- * @internal
1687
- * Specifies how to display the term-description pairs within a description list.
1688
- */
1689
- var SkyDescriptionListMode;
1690
- (function (SkyDescriptionListMode) {
1691
- /**
1692
- * Displays term-description pairs side by side in a horizontal list.
1693
- * This mode provides a responsive layout.
1694
- */
1695
- SkyDescriptionListMode["horizontal"] = "horizontal";
1696
- /**
1697
- * Displays terms and descriptions side by side with the term on the left and the description
1698
- * on the right. This mode includes room for long descriptions and uses a responsive layout
1699
- * that stacks term-description pairs vertically.
1700
- */
1701
- SkyDescriptionListMode["longDescription"] = "longDescription";
1702
- /**
1703
- * Displays term-description pairs in a vertical list.
1704
- */
1705
- SkyDescriptionListMode["vertical"] = "vertical";
1706
- })(SkyDescriptionListMode || (SkyDescriptionListMode = {}));
1707
-
1708
- /**
1709
- * @deprecated Use `SkyFluidGridGutterSizeType` instead.
1710
- * @internal
1711
- */
1712
- var SkyFluidGridGutterSize;
1713
- (function (SkyFluidGridGutterSize) {
1714
- /**
1715
- * Specifies a small gutter.
1716
- */
1717
- SkyFluidGridGutterSize[SkyFluidGridGutterSize["Small"] = 0] = "Small";
1718
- /**
1719
- * Specifies a medium gutter.
1720
- */
1721
- SkyFluidGridGutterSize[SkyFluidGridGutterSize["Medium"] = 1] = "Medium";
1722
- /**
1723
- * Specifies a large gutter.
1724
- */
1725
- SkyFluidGridGutterSize[SkyFluidGridGutterSize["Large"] = 2] = "Large";
1726
- })(SkyFluidGridGutterSize || (SkyFluidGridGutterSize = {}));
1727
-
1728
- /**
1729
- * Displays a column within a row of the fluid grid.
1730
- */
1731
- class SkyColumnComponent {
1732
- ngOnChanges(changes) {
1733
- /* istanbul ignore else */
1734
- if (changes.screenXSmall ||
1735
- changes.screenSmall ||
1736
- changes.screenMedium ||
1737
- changes.screenLarge) {
1738
- this.classnames = this.getClassNames();
1739
- }
1740
- }
1741
- getClassNames() {
1742
- const classnames = ['sky-column'];
1743
- if (this.screenXSmall) {
1744
- classnames.push(`sky-column-xs-${this.screenXSmall}`);
1745
- }
1746
- if (this.screenSmall) {
1747
- classnames.push(`sky-column-sm-${this.screenSmall}`);
1748
- }
1749
- if (this.screenMedium) {
1750
- classnames.push(`sky-column-md-${this.screenMedium}`);
1751
- }
1752
- if (this.screenLarge) {
1753
- classnames.push(`sky-column-lg-${this.screenLarge}`);
1754
- }
1755
- return classnames.join(' ');
1756
- }
1757
- ngOnInit() {
1758
- this.classnames = this.getClassNames();
1759
- }
1760
- }
1761
- SkyColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1762
- SkyColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyColumnComponent, selector: "sky-column", inputs: { screenXSmall: "screenXSmall", screenSmall: "screenSmall", screenMedium: "screenMedium", screenLarge: "screenLarge" }, host: { properties: { "class": "this.classnames" } }, usesOnChanges: true, ngImport: i0, template: "<ng-content></ng-content>\n", styles: ["sky-column.sky-column{padding-right:15px;padding-left:15px;width:100%;min-height:1px}.sky-theme-modern sky-column.sky-column{padding-right:30px;padding-left:30px}.sky-fluid-grid-gutter-size-small sky-column.sky-column{padding-right:5px;padding-left:5px}.sky-fluid-grid-gutter-size-medium sky-column.sky-column{padding-right:10px;padding-left:10px}.sky-theme-modern .sky-fluid-grid-gutter-size-small sky-column.sky-column{padding-right:10px;padding-left:10px}.sky-theme-modern .sky-fluid-grid-gutter-size-medium sky-column.sky-column{padding-right:15px;padding-left:15px}sky-column.sky-column-xs-1{width:calc(1 / 12 * 100%)}sky-column.sky-column-xs-2{width:calc(2 / 12 * 100%)}sky-column.sky-column-xs-3{width:calc(3 / 12 * 100%)}sky-column.sky-column-xs-4{width:calc(4 / 12 * 100%)}sky-column.sky-column-xs-5{width:calc(5 / 12 * 100%)}sky-column.sky-column-xs-6{width:calc(6 / 12 * 100%)}sky-column.sky-column-xs-7{width:calc(7 / 12 * 100%)}sky-column.sky-column-xs-8{width:calc(8 / 12 * 100%)}sky-column.sky-column-xs-9{width:calc(9 / 12 * 100%)}sky-column.sky-column-xs-10{width:calc(10 / 12 * 100%)}sky-column.sky-column-xs-11{width:calc(11 / 12 * 100%)}sky-column.sky-column-xs-12{width:calc(12 / 12 * 100%)}sky-column:not([class*=sky-column-xs-]){width:100%}.sky-responsive-container-xs sky-column.sky-column-xs-1,.sky-responsive-container-sm sky-column.sky-column-xs-1,.sky-responsive-container-md sky-column.sky-column-xs-1,.sky-responsive-container-lg sky-column.sky-column-xs-1{width:calc(1 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-2,.sky-responsive-container-sm sky-column.sky-column-xs-2,.sky-responsive-container-md sky-column.sky-column-xs-2,.sky-responsive-container-lg sky-column.sky-column-xs-2{width:calc(2 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-3,.sky-responsive-container-sm sky-column.sky-column-xs-3,.sky-responsive-container-md sky-column.sky-column-xs-3,.sky-responsive-container-lg sky-column.sky-column-xs-3{width:calc(3 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-4,.sky-responsive-container-sm sky-column.sky-column-xs-4,.sky-responsive-container-md sky-column.sky-column-xs-4,.sky-responsive-container-lg sky-column.sky-column-xs-4{width:calc(4 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-5,.sky-responsive-container-sm sky-column.sky-column-xs-5,.sky-responsive-container-md sky-column.sky-column-xs-5,.sky-responsive-container-lg sky-column.sky-column-xs-5{width:calc(5 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-6,.sky-responsive-container-sm sky-column.sky-column-xs-6,.sky-responsive-container-md sky-column.sky-column-xs-6,.sky-responsive-container-lg sky-column.sky-column-xs-6{width:calc(6 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-7,.sky-responsive-container-sm sky-column.sky-column-xs-7,.sky-responsive-container-md sky-column.sky-column-xs-7,.sky-responsive-container-lg sky-column.sky-column-xs-7{width:calc(7 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-8,.sky-responsive-container-sm sky-column.sky-column-xs-8,.sky-responsive-container-md sky-column.sky-column-xs-8,.sky-responsive-container-lg sky-column.sky-column-xs-8{width:calc(8 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-9,.sky-responsive-container-sm sky-column.sky-column-xs-9,.sky-responsive-container-md sky-column.sky-column-xs-9,.sky-responsive-container-lg sky-column.sky-column-xs-9{width:calc(9 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-10,.sky-responsive-container-sm sky-column.sky-column-xs-10,.sky-responsive-container-md sky-column.sky-column-xs-10,.sky-responsive-container-lg sky-column.sky-column-xs-10{width:calc(10 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-11,.sky-responsive-container-sm sky-column.sky-column-xs-11,.sky-responsive-container-md sky-column.sky-column-xs-11,.sky-responsive-container-lg sky-column.sky-column-xs-11{width:calc(11 / 12 * 100%)}.sky-responsive-container-xs sky-column.sky-column-xs-12,.sky-responsive-container-sm sky-column.sky-column-xs-12,.sky-responsive-container-md sky-column.sky-column-xs-12,.sky-responsive-container-lg sky-column.sky-column-xs-12{width:calc(12 / 12 * 100%)}.sky-responsive-container-xs sky-column:not([class*=sky-column-xs-]),.sky-responsive-container-sm sky-column:not([class*=sky-column-xs-]),.sky-responsive-container-md sky-column:not([class*=sky-column-xs-]),.sky-responsive-container-lg sky-column:not([class*=sky-column-xs-]){width:100%}@media (min-width: 768px){sky-column.sky-column-sm-1{width:calc(1 / 12 * 100%)}sky-column.sky-column-sm-2{width:calc(2 / 12 * 100%)}sky-column.sky-column-sm-3{width:calc(3 / 12 * 100%)}sky-column.sky-column-sm-4{width:calc(4 / 12 * 100%)}sky-column.sky-column-sm-5{width:calc(5 / 12 * 100%)}sky-column.sky-column-sm-6{width:calc(6 / 12 * 100%)}sky-column.sky-column-sm-7{width:calc(7 / 12 * 100%)}sky-column.sky-column-sm-8{width:calc(8 / 12 * 100%)}sky-column.sky-column-sm-9{width:calc(9 / 12 * 100%)}sky-column.sky-column-sm-10{width:calc(10 / 12 * 100%)}sky-column.sky-column-sm-11{width:calc(11 / 12 * 100%)}sky-column.sky-column-sm-12{width:calc(12 / 12 * 100%)}}.sky-responsive-container-sm sky-column.sky-column-sm-1,.sky-responsive-container-md sky-column.sky-column-sm-1,.sky-responsive-container-lg sky-column.sky-column-sm-1{width:calc(1 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-2,.sky-responsive-container-md sky-column.sky-column-sm-2,.sky-responsive-container-lg sky-column.sky-column-sm-2{width:calc(2 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-3,.sky-responsive-container-md sky-column.sky-column-sm-3,.sky-responsive-container-lg sky-column.sky-column-sm-3{width:calc(3 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-4,.sky-responsive-container-md sky-column.sky-column-sm-4,.sky-responsive-container-lg sky-column.sky-column-sm-4{width:calc(4 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-5,.sky-responsive-container-md sky-column.sky-column-sm-5,.sky-responsive-container-lg sky-column.sky-column-sm-5{width:calc(5 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-6,.sky-responsive-container-md sky-column.sky-column-sm-6,.sky-responsive-container-lg sky-column.sky-column-sm-6{width:calc(6 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-7,.sky-responsive-container-md sky-column.sky-column-sm-7,.sky-responsive-container-lg sky-column.sky-column-sm-7{width:calc(7 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-8,.sky-responsive-container-md sky-column.sky-column-sm-8,.sky-responsive-container-lg sky-column.sky-column-sm-8{width:calc(8 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-9,.sky-responsive-container-md sky-column.sky-column-sm-9,.sky-responsive-container-lg sky-column.sky-column-sm-9{width:calc(9 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-10,.sky-responsive-container-md sky-column.sky-column-sm-10,.sky-responsive-container-lg sky-column.sky-column-sm-10{width:calc(10 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-11,.sky-responsive-container-md sky-column.sky-column-sm-11,.sky-responsive-container-lg sky-column.sky-column-sm-11{width:calc(11 / 12 * 100%)}.sky-responsive-container-sm sky-column.sky-column-sm-12,.sky-responsive-container-md sky-column.sky-column-sm-12,.sky-responsive-container-lg sky-column.sky-column-sm-12{width:calc(12 / 12 * 100%)}@media (min-width: 992px){sky-column.sky-column-md-1{width:calc(1 / 12 * 100%)}sky-column.sky-column-md-2{width:calc(2 / 12 * 100%)}sky-column.sky-column-md-3{width:calc(3 / 12 * 100%)}sky-column.sky-column-md-4{width:calc(4 / 12 * 100%)}sky-column.sky-column-md-5{width:calc(5 / 12 * 100%)}sky-column.sky-column-md-6{width:calc(6 / 12 * 100%)}sky-column.sky-column-md-7{width:calc(7 / 12 * 100%)}sky-column.sky-column-md-8{width:calc(8 / 12 * 100%)}sky-column.sky-column-md-9{width:calc(9 / 12 * 100%)}sky-column.sky-column-md-10{width:calc(10 / 12 * 100%)}sky-column.sky-column-md-11{width:calc(11 / 12 * 100%)}sky-column.sky-column-md-12{width:calc(12 / 12 * 100%)}}.sky-responsive-container-md sky-column.sky-column-md-1,.sky-responsive-container-lg sky-column.sky-column-md-1{width:calc(1 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-2,.sky-responsive-container-lg sky-column.sky-column-md-2{width:calc(2 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-3,.sky-responsive-container-lg sky-column.sky-column-md-3{width:calc(3 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-4,.sky-responsive-container-lg sky-column.sky-column-md-4{width:calc(4 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-5,.sky-responsive-container-lg sky-column.sky-column-md-5{width:calc(5 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-6,.sky-responsive-container-lg sky-column.sky-column-md-6{width:calc(6 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-7,.sky-responsive-container-lg sky-column.sky-column-md-7{width:calc(7 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-8,.sky-responsive-container-lg sky-column.sky-column-md-8{width:calc(8 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-9,.sky-responsive-container-lg sky-column.sky-column-md-9{width:calc(9 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-10,.sky-responsive-container-lg sky-column.sky-column-md-10{width:calc(10 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-11,.sky-responsive-container-lg sky-column.sky-column-md-11{width:calc(11 / 12 * 100%)}.sky-responsive-container-md sky-column.sky-column-md-12,.sky-responsive-container-lg sky-column.sky-column-md-12{width:calc(12 / 12 * 100%)}@media (min-width: 1200px){sky-column.sky-column-lg-1{width:calc(1 / 12 * 100%)}sky-column.sky-column-lg-2{width:calc(2 / 12 * 100%)}sky-column.sky-column-lg-3{width:calc(3 / 12 * 100%)}sky-column.sky-column-lg-4{width:calc(4 / 12 * 100%)}sky-column.sky-column-lg-5{width:calc(5 / 12 * 100%)}sky-column.sky-column-lg-6{width:calc(6 / 12 * 100%)}sky-column.sky-column-lg-7{width:calc(7 / 12 * 100%)}sky-column.sky-column-lg-8{width:calc(8 / 12 * 100%)}sky-column.sky-column-lg-9{width:calc(9 / 12 * 100%)}sky-column.sky-column-lg-10{width:calc(10 / 12 * 100%)}sky-column.sky-column-lg-11{width:calc(11 / 12 * 100%)}sky-column.sky-column-lg-12{width:calc(12 / 12 * 100%)}}.sky-responsive-container-lg sky-column.sky-column-lg-1{width:calc(1 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-2{width:calc(2 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-3{width:calc(3 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-4{width:calc(4 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-5{width:calc(5 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-6{width:calc(6 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-7{width:calc(7 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-8{width:calc(8 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-9{width:calc(9 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-10{width:calc(10 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-11{width:calc(11 / 12 * 100%)}.sky-responsive-container-lg sky-column.sky-column-lg-12{width:calc(12 / 12 * 100%)}\n"], encapsulation: i0.ViewEncapsulation.None });
1763
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyColumnComponent, decorators: [{
1764
- type: Component,
1765
- args: [{
1766
- selector: 'sky-column',
1767
- templateUrl: './column.component.html',
1768
- styleUrls: ['./column.component.scss'],
1769
- encapsulation: ViewEncapsulation.None,
1770
- }]
1771
- }], propDecorators: { screenXSmall: [{
1772
- type: Input
1773
- }], screenSmall: [{
1774
- type: Input
1775
- }], screenMedium: [{
1776
- type: Input
1777
- }], screenLarge: [{
1778
- type: Input
1779
- }], classnames: [{
1780
- type: HostBinding,
1781
- args: ['class']
1782
- }] } });
1783
-
1784
- /**
1785
- * Wraps the fluid grid to ensure proper spacing. Without the wrapper, the
1786
- * alignment, padding, and margins do not behave as expected.
1787
- */
1788
- class SkyFluidGridComponent {
1789
- /**
1790
- * Disables the outer left and right margin of the fluid grid container.
1791
- * @default false
1792
- */
1793
- set disableMargin(value) {
1794
- this._disableMargin = value;
1795
- }
1796
- get disableMargin() {
1797
- return this._disableMargin || false;
1798
- }
1799
- /**
1800
- * Specifies a `SkyFluidGridGutterSizeType` to define the size of the padding
1801
- * between columns. Options include: `any`, `1`, `2`, `"small"`, `"medium"`, and `"large"`.
1802
- * @default "large"
1803
- */
1804
- set gutterSize(value) {
1805
- this._gutterSize = value;
1806
- }
1807
- get gutterSize() {
1808
- return this._gutterSize === undefined ? 'large' : this._gutterSize;
1809
- }
1810
- /**
1811
- * @internal
1812
- */
1813
- get gutterSizeResolved() {
1814
- // Before this change, the template did a `==` comparison, implicitly converting numerical
1815
- // string values to their numeric values before comparing them. Checking for the numerical
1816
- // string value in addition to the values allowed by the type maintains this behavior.
1817
- switch (this.gutterSize) {
1818
- case 'medium':
1819
- case SkyFluidGridGutterSize.Medium:
1820
- case SkyFluidGridGutterSize.Medium.toString():
1821
- return 'medium';
1822
- case 'small':
1823
- case SkyFluidGridGutterSize.Small:
1824
- case SkyFluidGridGutterSize.Small.toString():
1825
- return 'small';
1826
- default:
1827
- return 'large';
1828
- }
1829
- }
1830
- }
1831
- SkyFluidGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyFluidGridComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1832
- SkyFluidGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyFluidGridComponent, selector: "sky-fluid-grid", inputs: { disableMargin: "disableMargin", gutterSize: "gutterSize" }, ngImport: i0, template: "<div\n class=\"sky-fluid-grid\"\n [ngClass]=\"{\n 'sky-fluid-grid-gutter-size-small': gutterSizeResolved === 'small',\n 'sky-fluid-grid-gutter-size-medium': gutterSizeResolved === 'medium',\n 'sky-fluid-grid-gutter-size-large': gutterSizeResolved === 'large',\n 'sky-fluid-grid-no-margin': disableMargin\n }\"\n>\n <ng-content></ng-content>\n</div>\n", styles: [".sky-fluid-grid-gutter-size-small{padding-left:5px;padding-right:5px}.sky-fluid-grid-gutter-size-medium{padding-left:10px;padding-right:10px}.sky-fluid-grid-gutter-size-large{padding-left:15px;padding-right:15px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-small{padding-left:10px;padding-right:10px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-medium{padding-left:15px;padding-right:15px}:host-context(.sky-theme-modern) .sky-fluid-grid-gutter-size-large{padding-left:30px;padding-right:30px}\n"], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1833
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyFluidGridComponent, decorators: [{
1834
- type: Component,
1835
- args: [{
1836
- selector: 'sky-fluid-grid',
1837
- templateUrl: './fluid-grid.component.html',
1838
- styleUrls: ['./fluid-grid.component.scss'],
1839
- }]
1840
- }], propDecorators: { disableMargin: [{
1841
- type: Input
1842
- }], gutterSize: [{
1843
- type: Input
1844
- }] } });
1845
-
1846
- /**
1847
- * Displays a row within the `sky-fluid-grid` wrapper. Previously, you could display a row
1848
- * without a wrapper, but we no longer officially support that option.
1849
- */
1850
- class SkyRowComponent {
1851
- constructor() {
1852
- /**
1853
- * Indicates whether to reverse the display order for columns in the row.
1854
- * @default false
1855
- */
1856
- this.reverseColumnOrder = false;
1857
- }
1858
- }
1859
- SkyRowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1860
- SkyRowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyRowComponent, selector: "sky-row", inputs: { reverseColumnOrder: "reverseColumnOrder" }, ngImport: i0, template: "<div class=\"sky-row\" [ngClass]=\"{ 'sky-row-reverse': reverseColumnOrder }\">\n <ng-content></ng-content>\n</div>\n", styles: [".sky-row{display:flex;flex-direction:row;flex-wrap:wrap;margin-left:-15px;margin-right:-15px}:host-context(.sky-fluid-grid-gutter-size-small) .sky-row{margin-left:-5px;margin-right:-5px}:host-context(.sky-fluid-grid-gutter-size-small.sky-fluid-grid-no-margin) .sky-row{margin-left:-10px;margin-right:-10px}:host-context(.sky-fluid-grid-gutter-size-medium) .sky-row{margin-left:-10px;margin-right:-10px}:host-context(.sky-fluid-grid-gutter-size-medium.sky-fluid-grid-no-margin) .sky-row{margin-left:-20px;margin-right:-20px}:host-context(.sky-fluid-grid-gutter-size-large) .sky-row{margin-left:-15px;margin-right:-15px}:host-context(.sky-fluid-grid-gutter-size-large.sky-fluid-grid-no-margin) .sky-row{margin-left:-30px;margin-right:-30px}:host-context(.sky-theme-modern .sky-fluid-grid-gutter-size-small) .sky-row{margin-left:-10px;margin-right:-10px}:host-context(.sky-theme-modern .sky-fluid-grid-gutter-size-small.sky-fluid-grid-no-margin) .sky-row{margin-left:-20px;margin-right:-20px}:host-context(.sky-theme-modern .sky-fluid-grid-gutter-size-medium) .sky-row{margin-left:-15px;margin-right:-15px}:host-context(.sky-theme-modern .sky-fluid-grid-gutter-size-medium.sky-fluid-grid-no-margin) .sky-row{margin-left:-30px;margin-right:-30px}:host-context(.sky-theme-modern .sky-fluid-grid-gutter-size-large) .sky-row{margin-left:-30px;margin-right:-30px}:host-context(.sky-theme-modern .sky-fluid-grid-gutter-size-large.sky-fluid-grid-no-margin) .sky-row{margin-left:-60px;margin-right:-60px}:host .sky-row.sky-row-reverse{flex-direction:row}:host-context(.sky-responsive-container-xs) .sky-row.sky-row-reverse,:host-context(.sky-responsive-container-sm) .sky-row.sky-row-reverse,:host-context(.sky-responsive-container-md) .sky-row.sky-row-reverse,:host-context(.sky-responsive-container-lg) .sky-row.sky-row-reverse{flex-direction:row}@media (min-width: 768px){:host .sky-row.sky-row-reverse{flex-direction:row-reverse}}:host-context(.sky-responsive-container-sm) .sky-row.sky-row-reverse,:host-context(.sky-responsive-container-md) .sky-row.sky-row-reverse,:host-context(.sky-responsive-container-lg) .sky-row.sky-row-reverse{flex-direction:row-reverse}:host-context(.sky-theme-modern) .sky-row{margin-left:-30px;margin-right:-30px}.sky-theme-modern .sky-row{margin-left:-30px;margin-right:-30px}\n"], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1861
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyRowComponent, decorators: [{
1862
- type: Component,
1863
- args: [{
1864
- selector: 'sky-row',
1865
- templateUrl: './row.component.html',
1866
- styleUrls: ['./row.component.scss'],
1867
- }]
1868
- }], propDecorators: { reverseColumnOrder: [{
1869
- type: Input
1870
- }] } });
1871
-
1872
- class SkyFluidGridModule {
1873
- }
1874
- SkyFluidGridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyFluidGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1875
- SkyFluidGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyFluidGridModule, declarations: [SkyRowComponent, SkyColumnComponent, SkyFluidGridComponent], imports: [CommonModule], exports: [SkyRowComponent, SkyColumnComponent, SkyFluidGridComponent] });
1876
- SkyFluidGridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyFluidGridModule, imports: [[CommonModule]] });
1877
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyFluidGridModule, decorators: [{
1878
- type: NgModule,
1879
- args: [{
1880
- imports: [CommonModule],
1881
- declarations: [SkyRowComponent, SkyColumnComponent, SkyFluidGridComponent],
1882
- exports: [SkyRowComponent, SkyColumnComponent, SkyFluidGridComponent],
1883
- }]
1884
- }] });
1885
-
1886
- const tokenRegex = /(\{\d+\})/;
1887
- class SkyFormatComponent {
1888
- /**
1889
- * The tokenized string that represents the template. Tokens use the `{n}` notation
1890
- * where `n` is the ordinal of the item to replace the token.
1891
- */
1892
- set text(value) {
1893
- this._text = value;
1894
- this.updateItemsForDisplay();
1895
- }
1896
- get text() {
1897
- return this._text;
1898
- }
1899
- /**
1900
- * An array of `TemplateRef` objects to be placed in the template, where the `nth`
1901
- * item is placed at the `{n}` location in the template.
1902
- */
1903
- set args(value) {
1904
- this._args = value;
1905
- this.updateItemsForDisplay();
1906
- }
1907
- get args() {
1908
- return this._args;
1909
- }
1910
- updateItemsForDisplay() {
1911
- this.itemsForDisplay = [];
1912
- if (this.text && this.args) {
1913
- const textParts = this.text.split(tokenRegex);
1914
- for (const textPart of textParts) {
1915
- // Disregard empty strings.
1916
- if (textPart) {
1917
- const item = {};
1918
- if (tokenRegex.test(textPart)) {
1919
- const valueIndex = +textPart.substring(1, textPart.length - 1);
1920
- item.templateRef = this.args[valueIndex];
1921
- }
1922
- else {
1923
- item.text = textPart;
1924
- }
1925
- this.itemsForDisplay.push(item);
1926
- }
1927
- }
1928
- }
1929
- }
1930
- }
1931
- SkyFormatComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyFormatComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1932
- SkyFormatComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyFormatComponent, selector: "sky-format", inputs: { text: "text", args: "args" }, ngImport: i0, template: "<ng-container *ngFor=\"let item of itemsForDisplay\">\n <!--\n The following ng-container must be on one line so no extra whitespace is introduced.\n -->\n <ng-container *ngIf=\"item.text; else item.templateRef\">{{\n item.text\n }}</ng-container>\n</ng-container>\n", directives: [{ type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1933
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyFormatComponent, decorators: [{
1934
- type: Component,
1935
- args: [{
1936
- selector: 'sky-format',
1937
- templateUrl: './format.component.html',
1938
- changeDetection: ChangeDetectionStrategy.OnPush,
1939
- }]
1940
- }], propDecorators: { text: [{
1941
- type: Input
1942
- }], args: [{
1943
- type: Input
1944
- }] } });
1945
-
1946
- class SkyFormatModule {
1947
- }
1948
- SkyFormatModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyFormatModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1949
- SkyFormatModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyFormatModule, declarations: [SkyFormatComponent], imports: [CommonModule], exports: [SkyFormatComponent] });
1950
- SkyFormatModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyFormatModule, imports: [[CommonModule]] });
1951
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyFormatModule, decorators: [{
1952
- type: NgModule,
1953
- args: [{
1954
- declarations: [SkyFormatComponent],
1955
- imports: [CommonModule],
1956
- exports: [SkyFormatComponent],
1957
- }]
1958
- }] });
1959
-
1960
- /**
1961
- * @internal
1962
- */
1963
- class SkyPageThemeAdapterService {
1964
- addTheme() {
1965
- if (!this.styleEl) {
1966
- this.styleEl = document.createElement('style');
1967
- this.styleEl.appendChild(document.createTextNode('body { background-color: #fff; }'));
1968
- document.head.appendChild(this.styleEl);
1969
- }
1970
- }
1971
- removeTheme() {
1972
- if (this.styleEl) {
1973
- document.head.removeChild(this.styleEl);
1974
- this.styleEl = undefined;
1975
- }
1976
- }
1977
- }
1978
- SkyPageThemeAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageThemeAdapterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1979
- SkyPageThemeAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageThemeAdapterService });
1980
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageThemeAdapterService, decorators: [{
1981
- type: Injectable
1982
- }] });
1983
-
1984
- /**
1985
- * Resets the SPA's background to white and adds the `sky-theme-default` CSS class to the host
1986
- * element to let consumers override CSS styling. Consumers can override any element by writing
1987
- * CSS selectors like this: `:host-context(.sky-theme-default) .my-class {}`.
1988
- */
1989
- class SkyPageComponent {
1990
- constructor(themeAdapter) {
1991
- this.themeAdapter = themeAdapter;
1992
- }
1993
- ngOnInit() {
1994
- this.themeAdapter.addTheme();
1995
- }
1996
- ngOnDestroy() {
1997
- this.themeAdapter.removeTheme();
1998
- }
1999
- }
2000
- SkyPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageComponent, deps: [{ token: SkyPageThemeAdapterService }], target: i0.ɵɵFactoryTarget.Component });
2001
- SkyPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyPageComponent, selector: "sky-page", providers: [SkyPageThemeAdapterService], ngImport: i0, template: "<div class=\"sky-theme-default\">\n <ng-content></ng-content>\n</div>\n" });
2002
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageComponent, decorators: [{
2003
- type: Component,
2004
- args: [{
2005
- selector: 'sky-page',
2006
- templateUrl: './page.component.html',
2007
- providers: [SkyPageThemeAdapterService],
2008
- }]
2009
- }], ctorParameters: function () { return [{ type: SkyPageThemeAdapterService }]; } });
2010
-
2011
- class SkyPageModule {
2012
- }
2013
- SkyPageModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2014
- SkyPageModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageModule, declarations: [SkyPageComponent], exports: [SkyPageComponent] });
2015
- SkyPageModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageModule });
2016
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageModule, decorators: [{
2017
- type: NgModule,
2018
- args: [{
2019
- declarations: [SkyPageComponent],
2020
- exports: [SkyPageComponent],
2021
- }]
2022
- }] });
2023
-
2024
- /**
2025
- * Displays messages that require immediate attention as [alerts](https://developer.blackbaud.com/skyux/components/alert) within
2026
- * the page summary.
2027
- */
2028
- /* istanbul ignore next */
2029
- /* Code coverage having problems with no statements in classes */
2030
- class SkyPageSummaryAlertComponent {
2031
- }
2032
- SkyPageSummaryAlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2033
- SkyPageSummaryAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyPageSummaryAlertComponent, selector: "sky-page-summary-alert", ngImport: i0, template: "<ng-content></ng-content>\n", styles: ["::ng-deep .sky-alert{margin-top:0;margin-bottom:20px;line-height:initial}\n"] });
2034
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryAlertComponent, decorators: [{
2035
- type: Component,
2036
- args: [{
2037
- selector: 'sky-page-summary-alert',
2038
- templateUrl: './page-summary-alert.component.html',
2039
- styleUrls: ['./page-summary-alert.component.scss'],
2040
- }]
2041
- }] });
2042
-
2043
- /**
2044
- * Displays content in the arbitrary section of the page summary.
2045
- */
2046
- /* istanbul ignore next */
2047
- /* Code coverage having problems with no statements in classes */
2048
- class SkyPageSummaryContentComponent {
2049
- }
2050
- SkyPageSummaryContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2051
- SkyPageSummaryContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyPageSummaryContentComponent, selector: "sky-page-summary-content", ngImport: i0, template: "<div class=\"sky-page-summary-content\">\n <ng-content></ng-content>\n</div>\n", styles: [".sky-page-summary-content{margin-top:20px}\n"] });
2052
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryContentComponent, decorators: [{
2053
- type: Component,
2054
- args: [{
2055
- selector: 'sky-page-summary-content',
2056
- templateUrl: './page-summary-content.component.html',
2057
- styleUrls: ['./page-summary-content.component.scss'],
2058
- }]
2059
- }] });
2060
-
2061
- /**
2062
- * Displays an image in the page summary to identify a record
2063
- * or help users complete a core task.
2064
- */
2065
- /* istanbul ignore next */
2066
- /* Code coverage having problems with no statements in classes */
2067
- class SkyPageSummaryImageComponent {
2068
- }
2069
- SkyPageSummaryImageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryImageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2070
- SkyPageSummaryImageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyPageSummaryImageComponent, selector: "sky-page-summary-image", ngImport: i0, template: "<div class=\"sky-page-summary-image\">\n <ng-content></ng-content>\n</div>\n", styles: [":host .sky-page-summary-image{width:100px;margin-left:auto;margin-right:auto;margin-bottom:10px}:host-context(.sky-responsive-container-xs) .sky-page-summary-image,:host-context(.sky-responsive-container-sm) .sky-page-summary-image,:host-context(.sky-responsive-container-md) .sky-page-summary-image,:host-context(.sky-responsive-container-lg) .sky-page-summary-image{width:100px;margin-left:auto;margin-right:auto;margin-bottom:10px}@media (min-width: 768px){:host .sky-page-summary-image{width:120px;flex:0 0 120px;margin:initial}}:host-context(.sky-responsive-container-sm) .sky-page-summary-image,:host-context(.sky-responsive-container-md) .sky-page-summary-image,:host-context(.sky-responsive-container-lg) .sky-page-summary-image{width:120px;flex:0 0 120px;margin:initial}\n"] });
2071
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryImageComponent, decorators: [{
2072
- type: Component,
2073
- args: [{
2074
- selector: 'sky-page-summary-image',
2075
- templateUrl: './page-summary-image.component.html',
2076
- styleUrls: ['./page-summary-image.component.scss'],
2077
- }]
2078
- }] });
2079
-
2080
- /**
2081
- * Highlights important information about a page in the key information section of the
2082
- * page summary.
2083
- */
2084
- class SkyPageSummaryKeyInfoComponent {
2085
- }
2086
- SkyPageSummaryKeyInfoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryKeyInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2087
- SkyPageSummaryKeyInfoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyPageSummaryKeyInfoComponent, selector: "sky-page-summary-key-info", ngImport: i0, template: "<div class=\"sky-page-summary-key-info\">\n <ng-content></ng-content>\n</div>\n", styles: [":host .sky-page-summary-key-info{margin-top:20px}:host-context(.sky-responsive-container-xs) .sky-page-summary-key-info,:host-context(.sky-responsive-container-sm) .sky-page-summary-key-info,:host-context(.sky-responsive-container-md) .sky-page-summary-key-info,:host-context(.sky-responsive-container-lg) .sky-page-summary-key-info{margin-top:20px}@media (min-width: 768px){:host .sky-page-summary-key-info{margin-top:initial}}:host-context(.sky-responsive-container-sm) .sky-page-summary-key-info,:host-context(.sky-responsive-container-md) .sky-page-summary-key-info,:host-context(.sky-responsive-container-lg) .sky-page-summary-key-info{margin-top:initial}.sky-page-summary-key-info ::ng-deep .sky-key-info{display:block}\n"] });
2088
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryKeyInfoComponent, decorators: [{
2089
- type: Component,
2090
- args: [{
2091
- selector: 'sky-page-summary-key-info',
2092
- templateUrl: './page-summary-key-info.component.html',
2093
- styleUrls: ['./page-summary-key-info.component.scss'],
2094
- }]
2095
- }] });
2096
-
2097
- /**
2098
- * Displays [labels](https://developer.blackbaud.com/skyux/components/label)
2099
- * to highlight important status information about a page's content.
2100
- */
2101
- /* istanbul ignore next */
2102
- /* Code coverage having problems with no statements in classes */
2103
- class SkyPageSummaryStatusComponent {
2104
- }
2105
- SkyPageSummaryStatusComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryStatusComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2106
- SkyPageSummaryStatusComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyPageSummaryStatusComponent, selector: "sky-page-summary-status", ngImport: i0, template: "<div class=\"sky-page-summary-status\">\n <ng-content></ng-content>\n</div>\n", styles: [".sky-page-summary-status{margin-top:10px}.sky-page-summary-status ::ng-deep .sky-label{margin-right:5px}\n"] });
2107
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryStatusComponent, decorators: [{
2108
- type: Component,
2109
- args: [{
2110
- selector: 'sky-page-summary-status',
2111
- templateUrl: './page-summary-status.component.html',
2112
- styleUrls: ['./page-summary-status.component.scss'],
2113
- }]
2114
- }] });
2115
-
2116
- /**
2117
- * Specifies a subtitle to identify the page content.
2118
- */
2119
- /* istanbul ignore next */
2120
- /* Code coverage having problems with no statements in classes */
2121
- class SkyPageSummarySubtitleComponent {
2122
- }
2123
- SkyPageSummarySubtitleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummarySubtitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2124
- SkyPageSummarySubtitleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyPageSummarySubtitleComponent, selector: "sky-page-summary-subtitle", ngImport: i0, template: "<p class=\"sky-page-summary-subtitle sky-emphasized\">\n <ng-content></ng-content>\n</p>\n", styles: [".sky-page-summary-subtitle{margin-top:0;margin-bottom:10px;line-height:1.1}\n"] });
2125
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummarySubtitleComponent, decorators: [{
2126
- type: Component,
2127
- args: [{
2128
- selector: 'sky-page-summary-subtitle',
2129
- templateUrl: './page-summary-subtitle.component.html',
2130
- styleUrls: ['./page-summary-subtitle.component.scss'],
2131
- }]
2132
- }] });
2133
-
2134
- /**
2135
- * Specifies a title to identify the page content.
2136
- */
2137
- /* istanbul ignore next */
2138
- /* Code coverage having problems with no statements in classes */
2139
- class SkyPageSummaryTitleComponent {
2140
- }
2141
- SkyPageSummaryTitleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryTitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2142
- SkyPageSummaryTitleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyPageSummaryTitleComponent, selector: "sky-page-summary-title", ngImport: i0, template: "<h1 class=\"sky-page-summary-title sky-page-heading\">\n <ng-content></ng-content>\n</h1>\n", styles: [".sky-page-summary-title{margin-top:0;margin-bottom:5px}\n"] });
2143
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryTitleComponent, decorators: [{
2144
- type: Component,
2145
- args: [{
2146
- selector: 'sky-page-summary-title',
2147
- templateUrl: './page-summary-title.component.html',
2148
- styleUrls: ['./page-summary-title.component.scss'],
2149
- }]
2150
- }] });
2151
-
2152
- /**
2153
- * @internal
2154
- */
2155
- class SkyPageSummaryAdapterService {
2156
- updateKeyInfoLocation(elRef, isXS) {
2157
- const el = elRef.nativeElement;
2158
- const keyInfoContainerEl = el.querySelector('.sky-page-summary-key-info-container');
2159
- if (isXS) {
2160
- el.querySelector('.sky-page-summary-key-info-xs').appendChild(keyInfoContainerEl);
2161
- }
2162
- else {
2163
- el.querySelector('.sky-page-summary-key-info-sm').appendChild(keyInfoContainerEl);
2164
- }
2165
- }
2166
- }
2167
- SkyPageSummaryAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryAdapterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2168
- SkyPageSummaryAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryAdapterService });
2169
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryAdapterService, decorators: [{
2170
- type: Injectable
2171
- }] });
2172
-
2173
- /**
2174
- * Specifies the components to display in the page summary.
2175
- */
2176
- class SkyPageSummaryComponent {
2177
- constructor(elRef, adapter, mediaQueryService) {
2178
- this.elRef = elRef;
2179
- this.adapter = adapter;
2180
- this.mediaQueryService = mediaQueryService;
2181
- }
2182
- get hasKeyInfo() {
2183
- return this.keyInfoComponents.length > 0;
2184
- }
2185
- ngAfterViewInit() {
2186
- this.breakpointSubscription = this.mediaQueryService.subscribe((args) => {
2187
- this.adapter.updateKeyInfoLocation(this.elRef, args === SkyMediaBreakpoints.xs);
2188
- });
2189
- }
2190
- ngOnDestroy() {
2191
- /* istanbul ignore else */
2192
- /* sanity check */
2193
- if (this.breakpointSubscription) {
2194
- this.breakpointSubscription.unsubscribe();
2195
- }
2196
- }
2197
- }
2198
- SkyPageSummaryComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryComponent, deps: [{ token: i0.ElementRef }, { token: SkyPageSummaryAdapterService }, { token: i1.SkyMediaQueryService }], target: i0.ɵɵFactoryTarget.Component });
2199
- SkyPageSummaryComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyPageSummaryComponent, selector: "sky-page-summary", providers: [SkyPageSummaryAdapterService], queries: [{ propertyName: "keyInfoComponents", predicate: SkyPageSummaryKeyInfoComponent, read: SkyPageSummaryKeyInfoComponent }], ngImport: i0, template: "<div\n class=\"sky-page-summary\"\n [ngClass]=\"{ 'sky-page-summary-with-key-info': hasKeyInfo }\"\n>\n <ng-content select=\"sky-page-summary-alert\"></ng-content>\n <div class=\"sky-page-summary-row\">\n <div class=\"sky-page-summary-left\">\n <ng-content select=\"sky-page-summary-image\"></ng-content>\n <div class=\"sky-page-summary-data\">\n <ng-content select=\"sky-page-summary-title\"></ng-content>\n <ng-content select=\"sky-page-summary-subtitle\"></ng-content>\n <ng-content select=\"sky-page-summary-status\"></ng-content>\n <div class=\"sky-page-summary-key-info-xs\"></div>\n <ng-content select=\"sky-page-summary-content\"></ng-content>\n </div>\n </div>\n <div class=\"sky-page-summary-key-info-sm\">\n <div class=\"sky-page-summary-key-info-container\">\n <ng-content select=\"sky-page-summary-key-info\"></ng-content>\n </div>\n </div>\n </div>\n</div>\n", styles: [".sky-page-summary{background-color:#fff;padding:20px 15px}.sky-page-summary-row{align-items:stretch;display:flex}:host .sky-page-summary-left{flex-basis:100%;display:initial;align-items:initial}:host .sky-page-summary-with-key-info .sky-page-summary-left{flex-basis:100%;padding-right:initial}:host-context(.sky-responsive-container-xs) .sky-page-summary-left,:host-context(.sky-responsive-container-sm) .sky-page-summary-left,:host-context(.sky-responsive-container-md) .sky-page-summary-left,:host-context(.sky-responsive-container-lg) .sky-page-summary-left{flex-basis:100%;display:initial;align-items:initial}:host-context(.sky-responsive-container-xs) .sky-page-summary-with-key-info .sky-page-summary-left,:host-context(.sky-responsive-container-sm) .sky-page-summary-with-key-info .sky-page-summary-left,:host-context(.sky-responsive-container-md) .sky-page-summary-with-key-info .sky-page-summary-left,:host-context(.sky-responsive-container-lg) .sky-page-summary-with-key-info .sky-page-summary-left{flex-basis:100%;padding-right:initial}@media (min-width: 768px){:host .sky-page-summary-with-key-info .sky-page-summary-left{flex-basis:75%;padding-right:15px}:host .sky-page-summary-with-key-info .sky-page-summary-right{flex-basis:25%}:host .sky-page-summary-left{align-items:stretch;display:flex}:host .sky-page-summary-data{flex-grow:1}}:host-context(.sky-responsive-container-sm) .sky-page-summary-with-key-info .sky-page-summary-left,:host-context(.sky-responsive-container-md) .sky-page-summary-with-key-info .sky-page-summary-left,:host-context(.sky-responsive-container-lg) .sky-page-summary-with-key-info .sky-page-summary-left{flex-basis:75%;padding-right:15px}:host-context(.sky-responsive-container-sm) .sky-page-summary-with-key-info .sky-page-summary-right,:host-context(.sky-responsive-container-md) .sky-page-summary-with-key-info .sky-page-summary-right,:host-context(.sky-responsive-container-lg) .sky-page-summary-with-key-info .sky-page-summary-right{flex-basis:25%}:host-context(.sky-responsive-container-sm) .sky-page-summary-left,:host-context(.sky-responsive-container-md) .sky-page-summary-left,:host-context(.sky-responsive-container-lg) .sky-page-summary-left{align-items:stretch;display:flex}:host-context(.sky-responsive-container-sm) .sky-page-summary-data,:host-context(.sky-responsive-container-md) .sky-page-summary-data,:host-context(.sky-responsive-container-lg) .sky-page-summary-data{flex-grow:1}\n"], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
2200
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryComponent, decorators: [{
2201
- type: Component,
2202
- args: [{
2203
- selector: 'sky-page-summary',
2204
- templateUrl: './page-summary.component.html',
2205
- styleUrls: ['./page-summary.component.scss'],
2206
- providers: [SkyPageSummaryAdapterService],
2207
- }]
2208
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: SkyPageSummaryAdapterService }, { type: i1.SkyMediaQueryService }]; }, propDecorators: { keyInfoComponents: [{
2209
- type: ContentChildren,
2210
- args: [SkyPageSummaryKeyInfoComponent, {
2211
- read: SkyPageSummaryKeyInfoComponent,
2212
- }]
2213
- }] } });
2214
-
2215
- class SkyPageSummaryModule {
2216
- }
2217
- SkyPageSummaryModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2218
- SkyPageSummaryModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryModule, declarations: [SkyPageSummaryAlertComponent,
2219
- SkyPageSummaryComponent,
2220
- SkyPageSummaryContentComponent,
2221
- SkyPageSummaryImageComponent,
2222
- SkyPageSummaryKeyInfoComponent,
2223
- SkyPageSummaryStatusComponent,
2224
- SkyPageSummarySubtitleComponent,
2225
- SkyPageSummaryTitleComponent], imports: [CommonModule], exports: [SkyPageSummaryAlertComponent,
2226
- SkyPageSummaryComponent,
2227
- SkyPageSummaryContentComponent,
2228
- SkyPageSummaryImageComponent,
2229
- SkyPageSummaryKeyInfoComponent,
2230
- SkyPageSummaryStatusComponent,
2231
- SkyPageSummarySubtitleComponent,
2232
- SkyPageSummaryTitleComponent] });
2233
- SkyPageSummaryModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryModule, imports: [[CommonModule]] });
2234
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageSummaryModule, decorators: [{
2235
- type: NgModule,
2236
- args: [{
2237
- declarations: [
2238
- SkyPageSummaryAlertComponent,
2239
- SkyPageSummaryComponent,
2240
- SkyPageSummaryContentComponent,
2241
- SkyPageSummaryImageComponent,
2242
- SkyPageSummaryKeyInfoComponent,
2243
- SkyPageSummaryStatusComponent,
2244
- SkyPageSummarySubtitleComponent,
2245
- SkyPageSummaryTitleComponent,
2246
- ],
2247
- imports: [CommonModule],
2248
- exports: [
2249
- SkyPageSummaryAlertComponent,
2250
- SkyPageSummaryComponent,
2251
- SkyPageSummaryContentComponent,
2252
- SkyPageSummaryImageComponent,
2253
- SkyPageSummaryKeyInfoComponent,
2254
- SkyPageSummaryStatusComponent,
2255
- SkyPageSummarySubtitleComponent,
2256
- SkyPageSummaryTitleComponent,
2257
- ],
2258
- }]
2259
- }] });
2260
-
2261
- /**
2262
- * @internal
2263
- */
2264
- class SkyTextExpandModalContext {
2265
- }
2266
-
2267
- /**
2268
- * @internal
2269
- */
2270
- class SkyTextExpandModalComponent {
2271
- constructor(context, instance) {
2272
- this.context = context;
2273
- this.instance = instance;
2274
- }
2275
- close() {
2276
- this.instance.close();
2277
- }
2278
- }
2279
- SkyTextExpandModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandModalComponent, deps: [{ token: SkyTextExpandModalContext }, { token: i2$2.SkyModalInstance }], target: i0.ɵɵFactoryTarget.Component });
2280
- SkyTextExpandModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyTextExpandModalComponent, selector: "sky-text-expand-modal", ngImport: i0, template: "<sky-modal>\n <sky-modal-header>{{ context.header }}</sky-modal-header>\n <sky-modal-content class=\"sky-text-expand-modal-content\">{{\n context.text\n }}</sky-modal-content>\n <sky-modal-footer>\n <button class=\"sky-btn sky-btn-link\" (click)=\"close()\">\n {{ 'skyux_text_expand_close_text' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n", styles: [".sky-text-expand-ellipsis{letter-spacing:2px;white-space:nowrap}.sky-text-expand-space{white-space:normal}.sky-text-expand-see-more{white-space:nowrap;margin-left:5px}.sky-text-expand-text{margin:0;white-space:pre-wrap}.sky-text-expand-container{word-break:break-word;word-wrap:break-word;overflow:hidden;height:auto;transition:max-height .25s}.sky-text-expand-modal-content{white-space:pre-line;word-wrap:break-word}\n"], components: [{ type: i2$2.λ5, selector: "sky-modal", inputs: ["ariaRole", "tiledBody"] }, { type: i2$2.λ4, selector: "sky-modal-header" }, { type: i2$2.λ2, selector: "sky-modal-content" }, { type: i2$2.λ3, selector: "sky-modal-footer" }], pipes: { "skyLibResources": i1$1.SkyLibResourcesPipe } });
2281
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandModalComponent, decorators: [{
2282
- type: Component,
2283
- args: [{
2284
- selector: 'sky-text-expand-modal',
2285
- templateUrl: './text-expand-modal.component.html',
2286
- styleUrls: ['./text-expand.component.scss'],
2287
- }]
2288
- }], ctorParameters: function () { return [{ type: SkyTextExpandModalContext }, { type: i2$2.SkyModalInstance }]; } });
2289
-
2290
- /**
2291
- * @internal
2292
- */
2293
- class SkyTextExpandAdapterService {
2294
- constructor(rendererFactory) {
2295
- this.rendererFactory = rendererFactory;
2296
- this.renderer = this.rendererFactory.createRenderer(undefined, undefined);
2297
- }
2298
- getContainerHeight(containerEl) {
2299
- return containerEl.nativeElement.offsetHeight;
2300
- }
2301
- setContainerHeight(containerEl, height) {
2302
- if (height === undefined) {
2303
- this.renderer.removeStyle(containerEl.nativeElement, 'max-height');
2304
- }
2305
- else {
2306
- this.renderer.setStyle(containerEl.nativeElement, 'max-height', height);
2307
- }
2308
- }
2309
- setText(textEl, text) {
2310
- textEl.nativeElement.textContent = text;
2311
- }
2312
- }
2313
- SkyTextExpandAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandAdapterService, deps: [{ token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable });
2314
- SkyTextExpandAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandAdapterService });
2315
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandAdapterService, decorators: [{
2316
- type: Injectable
2317
- }], ctorParameters: function () { return [{ type: i0.RendererFactory2 }]; } });
2318
-
2319
- /**
2320
- * Auto-incrementing integer used to generate unique ids for text expand components.
2321
- */
2322
- let nextId$1 = 0;
2323
- class SkyTextExpandComponent {
2324
- constructor(resources, modalService, textExpandAdapter) {
2325
- this.resources = resources;
2326
- this.modalService = modalService;
2327
- this.textExpandAdapter = textExpandAdapter;
2328
- /**
2329
- * Specifies the maximum number of text characters to display inline when users select the link
2330
- * to expand the full text. If the text exceeds this limit, then the component expands
2331
- * the full text in a modal instead.
2332
- */
2333
- this.maxExpandedLength = 600;
2334
- /**
2335
- * Specifies the maximum number of newline characters to display inline when users select
2336
- * the link to expand the full text. If the text exceeds this limit, then
2337
- * the component expands the full text in a modal view instead.
2338
- */
2339
- this.maxExpandedNewlines = 2;
2340
- /**
2341
- * Indicates whether to replace newline characters in truncated text with spaces.
2342
- */
2343
- this.truncateNewlines = true;
2344
- this.contentSectionId = `sky-text-expand-content-${++nextId$1}`;
2345
- this.isExpanded = false;
2346
- this._maxLength = 200;
2347
- }
2348
- /**
2349
- * Specifies the number of text characters to display before truncating the text.
2350
- * To avoid truncating text in the middle of a word, the component looks for a space
2351
- * in the 10 characters before the last character.
2352
- * @default 200
2353
- */
2354
- set maxLength(value) {
2355
- this._maxLength = value;
2356
- /* istanbul ignore else */
2357
- if (this.textEl) {
2358
- this.setup(this.expandedText);
2359
- }
2360
- }
2361
- get maxLength() {
2362
- return this._maxLength;
2363
- }
2364
- /**
2365
- * Specifies the text to truncate.
2366
- */
2367
- set text(value) {
2368
- /* istanbul ignore else */
2369
- if (this.textEl) {
2370
- this.setup(value);
2371
- }
2372
- }
2373
- textExpand() {
2374
- if (this.isModal) {
2375
- // Modal View
2376
- /* istanbul ignore else */
2377
- /* sanity check */
2378
- if (!this.isExpanded) {
2379
- this.modalService.open(SkyTextExpandModalComponent, [
2380
- {
2381
- provide: SkyTextExpandModalContext,
2382
- useValue: {
2383
- header: this.expandModalTitle,
2384
- text: this.expandedText,
2385
- },
2386
- },
2387
- ]);
2388
- }
2389
- }
2390
- else {
2391
- // Normal View
2392
- if (!this.isExpanded) {
2393
- this.setContainerMaxHeight();
2394
- setTimeout(() => {
2395
- this.isExpanded = true;
2396
- this.animateText(this.collapsedText, this.expandedText, true);
2397
- }, 10);
2398
- }
2399
- else {
2400
- this.setContainerMaxHeight();
2401
- setTimeout(() => {
2402
- this.isExpanded = false;
2403
- this.animateText(this.expandedText, this.collapsedText, false);
2404
- }, 10);
2405
- }
2406
- }
2407
- }
2408
- animationEnd() {
2409
- // Ensure the correct text is displayed
2410
- this.textExpandAdapter.setText(this.textEl, this.textToShow);
2411
- // Set height back to auto so the browser can change the height as needed with window changes
2412
- this.textExpandAdapter.setContainerHeight(this.containerEl, undefined);
2413
- }
2414
- ngAfterContentInit() {
2415
- forkJoin([
2416
- this.resources.getString('skyux_text_expand_see_more'),
2417
- this.resources.getString('skyux_text_expand_see_less'),
2418
- ])
2419
- .pipe(take(1))
2420
- .subscribe((resources) => {
2421
- this.seeMoreText = resources[0];
2422
- this.seeLessText = resources[1];
2423
- this.setup(this.expandedText);
2424
- /* istanbul ignore else */
2425
- if (!this.expandModalTitle) {
2426
- this.resources
2427
- .getString('skyux_text_expand_modal_title')
2428
- .pipe(take(1))
2429
- .subscribe((resource) => {
2430
- this.expandModalTitle = resource;
2431
- });
2432
- }
2433
- });
2434
- }
2435
- setContainerMaxHeight() {
2436
- // ensure everything is reset
2437
- this.animationEnd();
2438
- /* Before animation is kicked off, ensure that a maxHeight exists */
2439
- /* Once we have support for angular v4 animations with parameters we can use that instead */
2440
- const currentHeight = this.textExpandAdapter.getContainerHeight(this.containerEl);
2441
- this.textExpandAdapter.setContainerHeight(this.containerEl, `${currentHeight}px`);
2442
- }
2443
- setup(value) {
2444
- if (value) {
2445
- this.newlineCount = this.getNewlineCount(value);
2446
- this.collapsedText = this.getTruncatedText(value, this.maxLength);
2447
- this.expandedText = value;
2448
- if (this.collapsedText !== value) {
2449
- this.buttonText = this.seeMoreText;
2450
- this.isExpanded = false;
2451
- this.expandable = true;
2452
- this.isModal =
2453
- this.newlineCount > this.maxExpandedNewlines ||
2454
- this.expandedText.length > this.maxExpandedLength;
2455
- }
2456
- else {
2457
- this.expandable = false;
2458
- }
2459
- this.textToShow = this.collapsedText;
2460
- }
2461
- else {
2462
- this.textToShow = '';
2463
- this.expandable = false;
2464
- }
2465
- this.textExpandAdapter.setText(this.textEl, this.textToShow);
2466
- }
2467
- getNewlineCount(value) {
2468
- const matches = value.match(/\n/gi);
2469
- if (matches) {
2470
- return matches.length;
2471
- }
2472
- return 0;
2473
- }
2474
- getTruncatedText(value, length) {
2475
- let i;
2476
- if (this.truncateNewlines) {
2477
- value = value.replace(/\n+/gi, ' ');
2478
- }
2479
- // Jump ahead one character and see if it's a space, and if it isn't,
2480
- // back up to the first space and break there so a word doesn't get cut
2481
- // in half.
2482
- if (length < value.length) {
2483
- for (i = length; i > length - 10; i--) {
2484
- if (/\s/.test(value.charAt(i))) {
2485
- length = i;
2486
- break;
2487
- }
2488
- }
2489
- }
2490
- return value.substr(0, length);
2491
- }
2492
- animateText(previousText, newText, expanding) {
2493
- const adapter = this.textExpandAdapter;
2494
- const container = this.containerEl;
2495
- // Reset max height
2496
- adapter.setContainerHeight(container, undefined);
2497
- // Measure the current height so we can animate from it.
2498
- const currentHeight = adapter.getContainerHeight(container);
2499
- this.textToShow = newText;
2500
- adapter.setText(this.textEl, this.textToShow);
2501
- this.buttonText = expanding ? this.seeLessText : this.seeMoreText;
2502
- // Measure the new height so we can animate to it.
2503
- const newHeight = adapter.getContainerHeight(container);
2504
- /* istanbul ignore if */
2505
- if (newHeight < currentHeight) {
2506
- // The new text is smaller than the old text, so put the old text back before doing
2507
- // the collapse animation to avoid showing a big chunk of whitespace.
2508
- adapter.setText(this.textEl, previousText);
2509
- }
2510
- adapter.setContainerHeight(container, `${currentHeight}px`);
2511
- // This timeout is necessary due to the browser needing to pick up the non-auto height being set
2512
- // in order to do the transtion in height correctly. Without it the transition does not fire.
2513
- setTimeout(() => {
2514
- adapter.setContainerHeight(container, `${newHeight}px`);
2515
- /* This resets values if the transition does not get kicked off */
2516
- setTimeout(() => {
2517
- this.animationEnd();
2518
- }, 500);
2519
- }, 10);
2520
- }
2521
- }
2522
- SkyTextExpandComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandComponent, deps: [{ token: i1$1.SkyLibResourcesService }, { token: i2$2.SkyModalService }, { token: SkyTextExpandAdapterService }], target: i0.ɵɵFactoryTarget.Component });
2523
- SkyTextExpandComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyTextExpandComponent, selector: "sky-text-expand", inputs: { expandModalTitle: "expandModalTitle", maxExpandedLength: "maxExpandedLength", maxExpandedNewlines: "maxExpandedNewlines", maxLength: "maxLength", text: "text", truncateNewlines: "truncateNewlines" }, providers: [SkyTextExpandAdapterService], viewQueries: [{ propertyName: "containerEl", first: true, predicate: ["container"], descendants: true, read: ElementRef, static: true }, { propertyName: "textEl", first: true, predicate: ["text"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<div\n class=\"sky-text-expand-container\"\n (transitionend)=\"animationEnd()\"\n #container\n>\n <span class=\"sky-text-expand-text\" [id]=\"contentSectionId\" #text></span>\n <span class=\"sky-text-expand-ellipsis\" *ngIf=\"!isExpanded && expandable\"\n >...\n </span>\n <button\n *ngIf=\"expandable\"\n type=\"button\"\n class=\"sky-btn sky-btn-link-inline sky-text-expand-see-more\"\n [attr.aria-expanded]=\"isModal ? undefined : isExpanded\"\n [attr.aria-controls]=\"isModal ? undefined : contentSectionId\"\n [attr.aria-haspopup]=\"isModal ? 'dialog' : undefined\"\n (click)=\"textExpand()\"\n >\n {{ buttonText }}\n </button>\n</div>\n", styles: [".sky-text-expand-ellipsis{letter-spacing:2px;white-space:nowrap}.sky-text-expand-space{white-space:normal}.sky-text-expand-see-more{white-space:nowrap;margin-left:5px}.sky-text-expand-text{margin:0;white-space:pre-wrap}.sky-text-expand-container{word-break:break-word;word-wrap:break-word;overflow:hidden;height:auto;transition:max-height .25s}.sky-text-expand-modal-content{white-space:pre-line;word-wrap:break-word}\n"], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2524
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandComponent, decorators: [{
2525
- type: Component,
2526
- args: [{
2527
- selector: 'sky-text-expand',
2528
- templateUrl: './text-expand.component.html',
2529
- styleUrls: ['./text-expand.component.scss'],
2530
- providers: [SkyTextExpandAdapterService],
2531
- }]
2532
- }], ctorParameters: function () { return [{ type: i1$1.SkyLibResourcesService }, { type: i2$2.SkyModalService }, { type: SkyTextExpandAdapterService }]; }, propDecorators: { expandModalTitle: [{
2533
- type: Input
2534
- }], maxExpandedLength: [{
2535
- type: Input
2536
- }], maxExpandedNewlines: [{
2537
- type: Input
2538
- }], maxLength: [{
2539
- type: Input
2540
- }], text: [{
2541
- type: Input
2542
- }], truncateNewlines: [{
2543
- type: Input
2544
- }], containerEl: [{
2545
- type: ViewChild,
2546
- args: ['container', {
2547
- read: ElementRef,
2548
- static: true,
2549
- }]
2550
- }], textEl: [{
2551
- type: ViewChild,
2552
- args: ['text', {
2553
- read: ElementRef,
2554
- static: true,
2555
- }]
2556
- }] } });
2557
-
2558
- class SkyTextExpandModule {
2559
- }
2560
- SkyTextExpandModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2561
- SkyTextExpandModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandModule, declarations: [SkyTextExpandComponent, SkyTextExpandModalComponent], imports: [SkyI18nModule,
2562
- SkyLayoutResourcesModule,
2563
- SkyModalModule,
2564
- CommonModule], exports: [SkyTextExpandComponent] });
2565
- SkyTextExpandModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandModule, imports: [[
2566
- SkyI18nModule,
2567
- SkyLayoutResourcesModule,
2568
- SkyModalModule,
2569
- CommonModule,
2570
- ]] });
2571
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandModule, decorators: [{
2572
- type: NgModule,
2573
- args: [{
2574
- declarations: [SkyTextExpandComponent, SkyTextExpandModalComponent],
2575
- imports: [
2576
- SkyI18nModule,
2577
- SkyLayoutResourcesModule,
2578
- SkyModalModule,
2579
- CommonModule,
2580
- ],
2581
- exports: [SkyTextExpandComponent],
2582
- entryComponents: [SkyTextExpandModalComponent],
2583
- }]
2584
- }] });
2585
-
2586
- /**
2587
- * @internal
2588
- */
2589
- class SkyTextExpandRepeaterAdapterService {
2590
- constructor(rendererFactory) {
2591
- this.rendererFactory = rendererFactory;
2592
- this.renderer = this.rendererFactory.createRenderer(undefined, undefined);
2593
- }
2594
- getItems(elRef) {
2595
- return elRef.nativeElement.querySelectorAll('.sky-text-expand-repeater-item');
2596
- }
2597
- hideItem(item) {
2598
- this.renderer.setStyle(item, 'display', 'none');
2599
- }
2600
- showItem(item) {
2601
- this.renderer.setStyle(item, 'display', 'list-item');
2602
- }
2603
- getContainerHeight(containerEl) {
2604
- return containerEl.nativeElement.offsetHeight;
2605
- }
2606
- setContainerHeight(containerEl, height) {
2607
- if (height === undefined) {
2608
- this.renderer.removeStyle(containerEl.nativeElement, 'max-height');
2609
- }
2610
- else {
2611
- this.renderer.setStyle(containerEl.nativeElement, 'max-height', height);
2612
- }
2613
- }
2614
- }
2615
- SkyTextExpandRepeaterAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandRepeaterAdapterService, deps: [{ token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable });
2616
- SkyTextExpandRepeaterAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandRepeaterAdapterService });
2617
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandRepeaterAdapterService, decorators: [{
2618
- type: Injectable
2619
- }], ctorParameters: function () { return [{ type: i0.RendererFactory2 }]; } });
2620
-
2621
- /**
2622
- * Auto-incrementing integer used to generate unique ids for text expand repeater components.
2623
- */
2624
- let nextId = 0;
2625
- class SkyTextExpandRepeaterComponent {
2626
- constructor(resources, elRef, textExpandRepeaterAdapter, changeDetector) {
2627
- this.resources = resources;
2628
- this.elRef = elRef;
2629
- this.textExpandRepeaterAdapter = textExpandRepeaterAdapter;
2630
- this.changeDetector = changeDetector;
2631
- /**
2632
- * Specifies the style of bullet to use
2633
- * @default "unordered"
2634
- */
2635
- this.listStyle = 'unordered';
2636
- this.contentSectionId = `sky-text-expand-repeater-content-${++nextId}`;
2637
- this.isExpanded = false;
2638
- }
2639
- ngAfterViewInit() {
2640
- if (this.contentItems) {
2641
- this.items = this.textExpandRepeaterAdapter.getItems(this.elRef);
2642
- for (let i = this.maxItems; i < this.contentItems.length; i++) {
2643
- this.textExpandRepeaterAdapter.hideItem(this.items[i]);
2644
- }
2645
- }
2646
- forkJoin([
2647
- this.resources.getString('skyux_text_expand_see_more'),
2648
- this.resources.getString('skyux_text_expand_see_less'),
2649
- ])
2650
- .pipe(take(1))
2651
- .subscribe((resources) => {
2652
- this.seeMoreText = resources[0];
2653
- this.seeLessText = resources[1];
2654
- /* sanity check */
2655
- /* istanbul ignore else */
2656
- if (!this.isExpanded) {
2657
- this.buttonText = this.seeMoreText;
2658
- }
2659
- else {
2660
- this.buttonText = this.seeLessText;
2661
- }
2662
- this.changeDetector.detectChanges();
2663
- });
2664
- }
2665
- ngOnChanges(changes) {
2666
- /* istanbul ignore else */
2667
- if (changes.maxItems || changes.data) {
2668
- this.setup(this.data);
2669
- }
2670
- }
2671
- animationEnd() {
2672
- // Ensure the correct items are displayed
2673
- if (!this.isExpanded) {
2674
- for (let i = this.maxItems; i < this.contentItems.length; i++) {
2675
- this.textExpandRepeaterAdapter.hideItem(this.items[i]);
2676
- }
2677
- }
2678
- // Set height back to auto so the browser can change the height as needed with window changes
2679
- this.textExpandRepeaterAdapter.setContainerHeight(this.containerEl, undefined);
2680
- }
2681
- repeaterExpand() {
2682
- if (!this.isExpanded) {
2683
- this.setContainerMaxHeight();
2684
- setTimeout(() => {
2685
- this.isExpanded = true;
2686
- this.animateRepeater(true);
2687
- });
2688
- }
2689
- else {
2690
- this.setContainerMaxHeight();
2691
- setTimeout(() => {
2692
- this.isExpanded = false;
2693
- this.animateRepeater(false);
2694
- });
2695
- }
2696
- }
2697
- setContainerMaxHeight() {
2698
- // ensure everything is reset
2699
- this.animationEnd();
2700
- /* Before animation is kicked off, ensure that a maxHeight exists */
2701
- /* Once we have support for angular v4 animations with parameters we can use that instead */
2702
- const currentHeight = this.textExpandRepeaterAdapter.getContainerHeight(this.containerEl);
2703
- this.textExpandRepeaterAdapter.setContainerHeight(this.containerEl, `${currentHeight}px`);
2704
- }
2705
- animateRepeater(expanding) {
2706
- const adapter = this.textExpandRepeaterAdapter;
2707
- const container = this.containerEl;
2708
- adapter.setContainerHeight(container, undefined);
2709
- const currentHeight = adapter.getContainerHeight(container);
2710
- for (let i = this.maxItems; i < this.contentItems.length; i++) {
2711
- if (!expanding) {
2712
- adapter.hideItem(this.items[i]);
2713
- }
2714
- else {
2715
- adapter.showItem(this.items[i]);
2716
- }
2717
- }
2718
- const newHeight = adapter.getContainerHeight(container);
2719
- if (!expanding) {
2720
- this.buttonText = this.seeMoreText;
2721
- }
2722
- else {
2723
- this.buttonText = this.seeLessText;
2724
- }
2725
- if (newHeight < currentHeight) {
2726
- // The new text is smaller than the old text, so put the old text back before doing
2727
- // the collapse animation to avoid showing a big chunk of whitespace.
2728
- for (let i = this.maxItems; i < this.contentItems.length; i++) {
2729
- adapter.showItem(this.items[i]);
2730
- }
2731
- }
2732
- adapter.setContainerHeight(container, `${currentHeight}px`);
2733
- // This timeout is necessary due to the browser needing to pick up the non-auto height being set
2734
- // in order to do the transtion in height correctly. Without it the transition does not fire.
2735
- setTimeout(() => {
2736
- adapter.setContainerHeight(container, `${newHeight}px`);
2737
- /* This resets values if the transition does not get kicked off */
2738
- setTimeout(() => {
2739
- this.animationEnd();
2740
- }, 500);
2741
- }, 10);
2742
- }
2743
- setup(value) {
2744
- if (value) {
2745
- const length = value.length;
2746
- if (length > this.maxItems) {
2747
- this.expandable = true;
2748
- this.buttonText = this.seeMoreText;
2749
- this.isExpanded = false;
2750
- }
2751
- else {
2752
- this.expandable = false;
2753
- }
2754
- this.contentItems = value;
2755
- }
2756
- else {
2757
- this.contentItems = undefined;
2758
- this.expandable = false;
2759
- }
2760
- }
2761
- }
2762
- SkyTextExpandRepeaterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandRepeaterComponent, deps: [{ token: i1$1.SkyLibResourcesService }, { token: i0.ElementRef }, { token: SkyTextExpandRepeaterAdapterService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2763
- SkyTextExpandRepeaterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyTextExpandRepeaterComponent, selector: "sky-text-expand-repeater", inputs: { data: "data", itemTemplate: "itemTemplate", listStyle: "listStyle", maxItems: "maxItems" }, providers: [SkyTextExpandRepeaterAdapterService], viewQueries: [{ propertyName: "containerEl", first: true, predicate: ["container"], descendants: true, read: ElementRef }], usesOnChanges: true, ngImport: i0, template: "<div class=\"sky-text-expand-repeater\">\n <ul\n *ngIf=\"listStyle !== 'ordered'\"\n class=\"sky-text-expand-repeater-container\"\n [id]=\"contentSectionId\"\n (transitionend)=\"animationEnd()\"\n [ngClass]=\"{\n 'sky-text-expand-repeater-list-style-none': listStyle === 'unstyled'\n }\"\n #container\n >\n <ng-template [ngTemplateOutlet]=\"listItemTemplate\"></ng-template>\n </ul>\n <ol\n *ngIf=\"listStyle === 'ordered'\"\n class=\"sky-text-expand-repeater-container\"\n [id]=\"contentSectionId\"\n (transitionend)=\"animationEnd()\"\n #container\n >\n <ng-template [ngTemplateOutlet]=\"listItemTemplate\"></ng-template>\n </ol>\n <button\n *ngIf=\"expandable\"\n type=\"button\"\n class=\"sky-btn sky-btn-link-inline sky-text-expand-repeater-see-more\"\n [attr.aria-expanded]=\"isExpanded\"\n [attr.aria-controls]=\"contentSectionId\"\n (click)=\"repeaterExpand()\"\n [ngClass]=\"{\n 'sky-text-expand-repeater-see-more-list-style-none':\n listStyle === 'unstyled'\n }\"\n >\n {{ buttonText }}\n </button>\n</div>\n\n<ng-template let-item #defaultItemTemplate>\n {{ item }}\n</ng-template>\n\n<ng-template #listItemTemplate>\n <li *ngFor=\"let item of contentItems\" class=\"sky-text-expand-repeater-item\">\n <ng-template\n [ngTemplateOutlet]=\"itemTemplate || defaultItemTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n </li>\n</ng-template>\n", styles: [".sky-text-expand-repeater-container{overflow-y:hidden;height:auto;margin-bottom:0;transition:max-height .25s}.sky-text-expand-repeater-see-more{white-space:nowrap;margin-left:40px}.sky-text-expand-repeater-list-style-none{list-style-type:none;padding-left:0}.sky-text-expand-repeater-see-more-list-style-none{margin-left:0}\n"], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
2764
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandRepeaterComponent, decorators: [{
2765
- type: Component,
2766
- args: [{
2767
- selector: 'sky-text-expand-repeater',
2768
- templateUrl: './text-expand-repeater.component.html',
2769
- styleUrls: ['./text-expand-repeater.component.scss'],
2770
- providers: [SkyTextExpandRepeaterAdapterService],
2771
- }]
2772
- }], ctorParameters: function () { return [{ type: i1$1.SkyLibResourcesService }, { type: i0.ElementRef }, { type: SkyTextExpandRepeaterAdapterService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { data: [{
2773
- type: Input
2774
- }], itemTemplate: [{
2775
- type: Input
2776
- }], listStyle: [{
2777
- type: Input
2778
- }], maxItems: [{
2779
- type: Input
2780
- }], containerEl: [{
2781
- type: ViewChild,
2782
- args: ['container', {
2783
- read: ElementRef,
2784
- static: false,
2785
- }]
2786
- }] } });
2787
-
2788
- class SkyTextExpandRepeaterModule {
2789
- }
2790
- SkyTextExpandRepeaterModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandRepeaterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2791
- SkyTextExpandRepeaterModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandRepeaterModule, declarations: [SkyTextExpandRepeaterComponent], imports: [SkyI18nModule, SkyLayoutResourcesModule, CommonModule], exports: [SkyTextExpandRepeaterComponent] });
2792
- SkyTextExpandRepeaterModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandRepeaterModule, imports: [[SkyI18nModule, SkyLayoutResourcesModule, CommonModule]] });
2793
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyTextExpandRepeaterModule, decorators: [{
2794
- type: NgModule,
2795
- args: [{
2796
- declarations: [SkyTextExpandRepeaterComponent],
2797
- imports: [SkyI18nModule, SkyLayoutResourcesModule, CommonModule],
2798
- exports: [SkyTextExpandRepeaterComponent],
2799
- }]
2800
- }] });
2801
-
2802
- /**
2803
- * Specifies a container for an item in the toolbar.
2804
- */
2805
- class SkyToolbarItemComponent {
2806
- }
2807
- SkyToolbarItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyToolbarItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2808
- SkyToolbarItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyToolbarItemComponent, selector: "sky-toolbar-item", ngImport: i0, template: "<div class=\"sky-toolbar-item\">\n <ng-content></ng-content>\n</div>\n", styles: [".sky-toolbar-item{margin-right:5px;margin-bottom:5px}:host-context(.sky-theme-modern) .sky-toolbar-item{margin-top:5px;margin-bottom:5px;margin-right:10px}:host-context(.sky-theme-modern) .sky-toolbar-item ::ng-deep .sky-btn{padding-left:10px;padding-right:10px}:host-context(.sky-theme-modern) .sky-toolbar-item ::ng-deep .sky-btn.sky-btn-default:not(:disabled){background-color:transparent;border:none}:host-context(.sky-theme-modern) .sky-toolbar-item ::ng-deep .sky-btn.sky-btn-default:not(:disabled):not(:hover):not(:active):not(:focus){box-shadow:inset 0 0 0 1px transparent}.sky-theme-modern .sky-toolbar-item{margin-top:5px;margin-bottom:5px;margin-right:10px}.sky-theme-modern .sky-toolbar-item ::ng-deep .sky-btn{padding-left:10px;padding-right:10px}.sky-theme-modern .sky-toolbar-item ::ng-deep .sky-btn.sky-btn-default:not(:disabled){background-color:transparent;border:none}.sky-theme-modern .sky-toolbar-item ::ng-deep .sky-btn.sky-btn-default:not(:disabled):not(:hover):not(:active):not(:focus){box-shadow:inset 0 0 0 1px transparent}\n"] });
2809
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyToolbarItemComponent, decorators: [{
2810
- type: Component,
2811
- args: [{
2812
- selector: 'sky-toolbar-item',
2813
- styleUrls: ['./toolbar-item.component.scss'],
2814
- templateUrl: './toolbar-item.component.html',
2815
- }]
2816
- }] });
2817
-
2818
- /**
2819
- * Specifies a section to group items within the toolbar. The section displays items in a separate horizontal row.
2820
- */
2821
- class SkyToolbarSectionComponent {
2822
- }
2823
- SkyToolbarSectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyToolbarSectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2824
- SkyToolbarSectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyToolbarSectionComponent, selector: "sky-toolbar-section", ngImport: i0, template: "<div class=\"sky-toolbar-section\">\n <div class=\"sky-toolbar-section-items\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"sky-toolbar-view-actions\"></ng-content>\n</div>\n", styles: [".sky-toolbar-section{display:flex;flex-wrap:nowrap;padding:5px 10px 0;min-height:49px;align-items:center;position:relative;overflow-x:auto}.sky-toolbar-section-items{display:flex;flex-wrap:wrap;align-items:center}:host-context(.sky-theme-modern) .sky-toolbar-section{padding:10px 0}.sky-theme-modern .sky-toolbar-section{padding:10px 0}\n"] });
2825
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyToolbarSectionComponent, decorators: [{
2826
- type: Component,
2827
- args: [{
2828
- selector: 'sky-toolbar-section',
2829
- styleUrls: ['./toolbar-section.component.scss'],
2830
- templateUrl: './toolbar-section.component.html',
2831
- }]
2832
- }] });
2833
-
2834
- /**
2835
- * Adds a section on the right side of the toolbar for items that substantially alter
2836
- * the view of the content container. This includes simple filters and view switchers.
2837
- */
2838
- class SkyToolbarViewActionsComponent {
2839
- }
2840
- SkyToolbarViewActionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyToolbarViewActionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2841
- SkyToolbarViewActionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyToolbarViewActionsComponent, selector: "sky-toolbar-view-actions", ngImport: i0, template: "<div class=\"sky-toolbar-view-actions\">\n <ng-content></ng-content>\n</div>\n", styles: [":host{margin-left:auto}.sky-toolbar-view-actions{display:flex;align-items:center;margin-bottom:5px}.sky-toolbar-view-actions ::ng-deep>:not(:last-child){margin-right:5px}:host-context(.sky-theme-modern) .sky-toolbar-view-actions{margin-bottom:0}:host-context(.sky-theme-modern) .sky-toolbar-view-actions ::ng-deep>:not(:last-child){margin-top:5px;margin-bottom:5px;margin-right:10px}:host-context(.sky-theme-modern) .sky-toolbar-view-actions ::ng-deep .sky-btn{background-color:transparent;border:none;padding-left:10px;padding-right:10px}:host-context(.sky-theme-modern) .sky-toolbar-view-actions ::ng-deep .sky-btn:not(:hover):not(:active):not(:focus){box-shadow:inset 0 0 0 1px transparent}.sky-theme-modern .sky-toolbar-view-actions{margin-bottom:0}.sky-theme-modern .sky-toolbar-view-actions ::ng-deep>:not(:last-child){margin-top:5px;margin-bottom:5px;margin-right:10px}.sky-theme-modern .sky-toolbar-view-actions ::ng-deep .sky-btn{background-color:transparent;border:none;padding-left:10px;padding-right:10px}.sky-theme-modern .sky-toolbar-view-actions ::ng-deep .sky-btn:not(:hover):not(:active):not(:focus){box-shadow:inset 0 0 0 1px transparent}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2842
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyToolbarViewActionsComponent, decorators: [{
2843
- type: Component,
2844
- args: [{
2845
- selector: 'sky-toolbar-view-actions',
2846
- templateUrl: './toolbar-view-actions.component.html',
2847
- styleUrls: ['./toolbar-view-actions.component.scss'],
2848
- changeDetection: ChangeDetectionStrategy.OnPush,
2849
- }]
2850
- }] });
2851
-
2852
- /**
2853
- * Displays actions for lists, records, and tiles.
2854
- */
2855
- class SkyToolbarComponent {
2856
- constructor() {
2857
- this.hasSections = false;
2858
- }
2859
- ngAfterContentInit() {
2860
- this.hasSections = this.sectionComponents.length > 0;
2861
- }
2862
- }
2863
- SkyToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2864
- SkyToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyToolbarComponent, selector: "sky-toolbar", queries: [{ propertyName: "sectionComponents", predicate: SkyToolbarSectionComponent, descendants: true }], ngImport: i0, template: "<div\n class=\"sky-toolbar-container\"\n [ngClass]=\"{ 'sky-toolbar-sectioned': hasSections }\"\n>\n <ng-content select=\"sky-toolbar-section\"></ng-content>\n <div class=\"sky-toolbar-items\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"sky-toolbar-view-actions\"></ng-content>\n</div>\n", styles: [".sky-toolbar-container{min-height:49px;background-color:#fff;padding:5px 10px 0;border-top:1px solid #cdcfd2;border-bottom:1px solid #cdcfd2;display:flex;flex-wrap:wrap;align-items:center;position:relative}.sky-toolbar-container ::ng-deep sky-toolbar-section:not(:first-child) .sky-toolbar-section{border-top:1px solid #cdcfd2}.sky-toolbar-container:not(.sky-toolbar-sectioned){flex-wrap:nowrap}.sky-toolbar-sectioned{display:block;padding:0}.sky-toolbar-items{display:flex;flex-wrap:wrap;align-items:center}:host-context(.sky-theme-modern .sky-viewkeeper-fixed) .sky-toolbar-container{background-color:#fcfcfc}:host-context(.sky-theme-modern.sky-theme-mode-dark .sky-viewkeeper-fixed) .sky-toolbar-container{background-color:#121212}:host-context(.sky-theme-modern) .sky-toolbar-container{background-color:transparent;border:none;padding:10px 0}:host-context(.sky-theme-modern) .sky-toolbar-container.sky-viewkeeper-fixed{background-color:#fcfcfc}:host-context(.sky-theme-modern) .sky-toolbar-container ::ng-deep sky-toolbar-section:not(:first-child) .sky-toolbar-section{border-top:1px solid #d2d2d2}:host-context(.sky-theme-modern) .sky-toolbar-sectioned{padding:0}.sky-theme-modern .sky-toolbar-container{background-color:transparent;border:none;padding:10px 0}.sky-theme-modern .sky-toolbar-container.sky-viewkeeper-fixed{background-color:#fcfcfc}.sky-theme-modern .sky-toolbar-container ::ng-deep sky-toolbar-section:not(:first-child) .sky-toolbar-section{border-top:1px solid #d2d2d2}.sky-theme-modern .sky-toolbar-sectioned{padding:0}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-toolbar-container.sky-viewkeeper-fixed{background-color:#121212}.sky-theme-modern.sky-theme-mode-dark .sky-toolbar-container.sky-viewkeeper-fixed{background-color:#121212}\n"], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
2865
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyToolbarComponent, decorators: [{
2866
- type: Component,
2867
- args: [{
2868
- selector: 'sky-toolbar',
2869
- styleUrls: ['./toolbar.component.scss'],
2870
- templateUrl: './toolbar.component.html',
2871
- }]
2872
- }], propDecorators: { sectionComponents: [{
2873
- type: ContentChildren,
2874
- args: [SkyToolbarSectionComponent, { descendants: true }]
2875
- }] } });
2876
-
2877
- class SkyToolbarModule {
2878
- }
2879
- SkyToolbarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyToolbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2880
- SkyToolbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyToolbarModule, declarations: [SkyToolbarComponent,
2881
- SkyToolbarItemComponent,
2882
- SkyToolbarSectionComponent,
2883
- SkyToolbarViewActionsComponent], imports: [CommonModule], exports: [SkyToolbarComponent,
2884
- SkyToolbarItemComponent,
2885
- SkyToolbarSectionComponent,
2886
- SkyToolbarViewActionsComponent] });
2887
- SkyToolbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyToolbarModule, imports: [[CommonModule]] });
2888
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyToolbarModule, decorators: [{
2889
- type: NgModule,
2890
- args: [{
2891
- declarations: [
2892
- SkyToolbarComponent,
2893
- SkyToolbarItemComponent,
2894
- SkyToolbarSectionComponent,
2895
- SkyToolbarViewActionsComponent,
2896
- ],
2897
- imports: [CommonModule],
2898
- exports: [
2899
- SkyToolbarComponent,
2900
- SkyToolbarItemComponent,
2901
- SkyToolbarSectionComponent,
2902
- SkyToolbarViewActionsComponent,
2903
- ],
2904
- }]
2905
- }] });
2906
-
2907
- /**
2908
- * Generated bundle index. Do not edit.
2909
- */
2910
-
2911
- export { SkyActionButtonModule, SkyBackToTopMessageType, SkyBackToTopModule, SkyBoxModule, SkyCardModule, SkyDefinitionListModule, SkyDescriptionListMode, SkyDescriptionListModule, SkyFluidGridGutterSize, SkyFluidGridModule, SkyFormatModule, SkyInlineDeleteModule, SkyInlineDeleteType, SkyPageModule, SkyPageSummaryModule, SkyTextExpandModule, SkyTextExpandRepeaterModule, SkyToolbarModule, SkyActionButtonComponent as λ1, SkyCardActionsComponent as λ10, SkyCardContentComponent as λ11, SkyCardTitleComponent as λ12, SkyDefinitionListComponent as λ13, SkyDefinitionListContentComponent as λ14, SkyDefinitionListHeadingComponent as λ15, SkyDefinitionListLabelComponent as λ16, SkyDefinitionListValueComponent as λ17, SkyDescriptionListComponent as λ18, SkyDescriptionListTermComponent as λ19, SkyActionButtonContainerComponent as λ2, SkyDescriptionListDescriptionComponent as λ20, SkyDescriptionListContentComponent as λ21, SkyFluidGridComponent as λ22, SkyRowComponent as λ23, SkyColumnComponent as λ24, SkyFormatComponent as λ25, SkyPageComponent as λ26, SkyPageSummaryComponent as λ27, SkyPageSummaryAlertComponent as λ28, SkyPageSummaryContentComponent as λ29, SkyActionButtonDetailsComponent as λ3, SkyPageSummaryImageComponent as λ30, SkyPageSummaryKeyInfoComponent as λ31, SkyPageSummaryStatusComponent as λ32, SkyPageSummarySubtitleComponent as λ33, SkyPageSummaryTitleComponent as λ34, SkyTextExpandComponent as λ35, SkyTextExpandRepeaterComponent as λ36, SkyToolbarComponent as λ37, SkyToolbarSectionComponent as λ38, SkyToolbarItemComponent as λ39, SkyActionButtonHeaderComponent as λ4, SkyToolbarViewActionsComponent as λ40, SkyBoxComponent as λ41, SkyBoxHeaderComponent as λ42, SkyBoxContentComponent as λ43, SkyBoxControlsComponent as λ44, SkyActionButtonIconComponent as λ5, SkyBackToTopComponent as λ6, SkyBackToTopDirective as λ7, SkyInlineDeleteComponent as λ8, SkyCardComponent as λ9 };
2912
- //# sourceMappingURL=skyux-layout.js.map