@skyux/code-examples 12.0.0-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (315) hide show
  1. package/README.md +1 -0
  2. package/fesm2022/skyux-code-examples.mjs +13411 -0
  3. package/fesm2022/skyux-code-examples.mjs.map +1 -0
  4. package/index.d.ts +169 -0
  5. package/lib/modules/action-bars/summary-action-bar/basic/example.component.d.ts +8 -0
  6. package/lib/modules/action-bars/summary-action-bar/modal/example.component.d.ts +7 -0
  7. package/lib/modules/action-bars/summary-action-bar/modal/modal.component.d.ts +10 -0
  8. package/lib/modules/action-bars/summary-action-bar/tab/example.component.d.ts +8 -0
  9. package/lib/modules/ag-grid/data-entry-grid/basic/context-menu.component.d.ts +16 -0
  10. package/lib/modules/ag-grid/data-entry-grid/basic/data.d.ts +19 -0
  11. package/lib/modules/ag-grid/data-entry-grid/basic/edit-modal-context.d.ts +4 -0
  12. package/lib/modules/ag-grid/data-entry-grid/basic/edit-modal.component.d.ts +17 -0
  13. package/lib/modules/ag-grid/data-entry-grid/basic/example.component.d.ts +16 -0
  14. package/lib/modules/ag-grid/data-entry-grid/basic/mark-inactive.component.d.ts +10 -0
  15. package/lib/modules/ag-grid/data-entry-grid/data-manager-added/context-menu.component.d.ts +16 -0
  16. package/lib/modules/ag-grid/data-entry-grid/data-manager-added/data.d.ts +19 -0
  17. package/lib/modules/ag-grid/data-entry-grid/data-manager-added/edit-modal-context.d.ts +4 -0
  18. package/lib/modules/ag-grid/data-entry-grid/data-manager-added/edit-modal.component.d.ts +14 -0
  19. package/lib/modules/ag-grid/data-entry-grid/data-manager-added/example.component.d.ts +13 -0
  20. package/lib/modules/ag-grid/data-entry-grid/data-manager-added/filter-modal.component.d.ts +12 -0
  21. package/lib/modules/ag-grid/data-entry-grid/data-manager-added/filters.d.ts +4 -0
  22. package/lib/modules/ag-grid/data-entry-grid/data-manager-added/view-grid.component.d.ts +23 -0
  23. package/lib/modules/ag-grid/data-entry-grid/focus/data.d.ts +19 -0
  24. package/lib/modules/ag-grid/data-entry-grid/focus/example.component.d.ts +9 -0
  25. package/lib/modules/ag-grid/data-entry-grid/inline-help/context-menu.component.d.ts +16 -0
  26. package/lib/modules/ag-grid/data-entry-grid/inline-help/data.d.ts +19 -0
  27. package/lib/modules/ag-grid/data-entry-grid/inline-help/edit-modal-context.d.ts +4 -0
  28. package/lib/modules/ag-grid/data-entry-grid/inline-help/edit-modal.component.d.ts +14 -0
  29. package/lib/modules/ag-grid/data-entry-grid/inline-help/example.component.d.ts +16 -0
  30. package/lib/modules/ag-grid/data-entry-grid/inline-help/inline-help.component.d.ts +9 -0
  31. package/lib/modules/ag-grid/data-grid/basic/context-menu.component.d.ts +16 -0
  32. package/lib/modules/ag-grid/data-grid/basic/data.d.ts +49 -0
  33. package/lib/modules/ag-grid/data-grid/basic/example.component.d.ts +40 -0
  34. package/lib/modules/ag-grid/data-grid/basic-multiselect/context-menu.component.d.ts +16 -0
  35. package/lib/modules/ag-grid/data-grid/basic-multiselect/data.d.ts +52 -0
  36. package/lib/modules/ag-grid/data-grid/basic-multiselect/example.component.d.ts +43 -0
  37. package/lib/modules/ag-grid/data-grid/data-manager/context-menu.component.d.ts +16 -0
  38. package/lib/modules/ag-grid/data-grid/data-manager/data.d.ts +39 -0
  39. package/lib/modules/ag-grid/data-grid/data-manager/example.component.d.ts +31 -0
  40. package/lib/modules/ag-grid/data-grid/data-manager/filter-modal.component.d.ts +12 -0
  41. package/lib/modules/ag-grid/data-grid/data-manager/filters.d.ts +4 -0
  42. package/lib/modules/ag-grid/data-grid/data-manager/view-grid.component.d.ts +22 -0
  43. package/lib/modules/ag-grid/data-grid/data-manager-multiselect/context-menu.component.d.ts +16 -0
  44. package/lib/modules/ag-grid/data-grid/data-manager-multiselect/data.d.ts +41 -0
  45. package/lib/modules/ag-grid/data-grid/data-manager-multiselect/example.component.d.ts +33 -0
  46. package/lib/modules/ag-grid/data-grid/data-manager-multiselect/filter-modal.component.d.ts +12 -0
  47. package/lib/modules/ag-grid/data-grid/data-manager-multiselect/filters.d.ts +4 -0
  48. package/lib/modules/ag-grid/data-grid/data-manager-multiselect/view-grid.component.d.ts +22 -0
  49. package/lib/modules/ag-grid/data-grid/inline-help/context-menu.component.d.ts +16 -0
  50. package/lib/modules/ag-grid/data-grid/inline-help/data.d.ts +49 -0
  51. package/lib/modules/ag-grid/data-grid/inline-help/example.component.d.ts +44 -0
  52. package/lib/modules/ag-grid/data-grid/inline-help/inline-help.component.d.ts +9 -0
  53. package/lib/modules/ag-grid/data-grid/paging/context-menu.component.d.ts +16 -0
  54. package/lib/modules/ag-grid/data-grid/paging/data.d.ts +49 -0
  55. package/lib/modules/ag-grid/data-grid/paging/example.component.d.ts +47 -0
  56. package/lib/modules/ag-grid/data-grid/template-ref-column/data.d.ts +28 -0
  57. package/lib/modules/ag-grid/data-grid/template-ref-column/example.component.d.ts +34 -0
  58. package/lib/modules/ag-grid/data-grid/top-scroll/context-menu.component.d.ts +16 -0
  59. package/lib/modules/ag-grid/data-grid/top-scroll/data.d.ts +52 -0
  60. package/lib/modules/ag-grid/data-grid/top-scroll/example.component.d.ts +47 -0
  61. package/lib/modules/angular-tree-component/angular-tree/basic/example.component.d.ts +31 -0
  62. package/lib/modules/angular-tree-component/angular-tree/help-key/example.component.d.ts +34 -0
  63. package/lib/modules/autonumeric/autonumeric/currency/example.component.d.ts +10 -0
  64. package/lib/modules/autonumeric/autonumeric/international-formatting/example.component.d.ts +10 -0
  65. package/lib/modules/autonumeric/autonumeric/options-provider/example.component.d.ts +11 -0
  66. package/lib/modules/autonumeric/autonumeric/options-provider/options-provider.d.ts +8 -0
  67. package/lib/modules/autonumeric/autonumeric/preset/example.component.d.ts +10 -0
  68. package/lib/modules/avatar/avatar/example.component.d.ts +10 -0
  69. package/lib/modules/avatar/avatar/example.service.d.ts +7 -0
  70. package/lib/modules/colorpicker/colorpicker/basic/example.component.d.ts +17 -0
  71. package/lib/modules/colorpicker/colorpicker/help-key/example.component.d.ts +17 -0
  72. package/lib/modules/colorpicker/colorpicker/programmatic/example.component.d.ts +21 -0
  73. package/lib/modules/core/id/example.component.d.ts +5 -0
  74. package/lib/modules/core/media-query/basic/example.component.d.ts +6 -0
  75. package/lib/modules/core/media-query/responsive-host/child.component.d.ts +6 -0
  76. package/lib/modules/core/media-query/responsive-host/container.component.d.ts +7 -0
  77. package/lib/modules/core/media-query/responsive-host/example.component.d.ts +6 -0
  78. package/lib/modules/core/numeric/basic/example.component.d.ts +9 -0
  79. package/lib/modules/data-manager/data-manager/basic/data.d.ts +9 -0
  80. package/lib/modules/data-manager/data-manager/basic/example.component.d.ts +10 -0
  81. package/lib/modules/data-manager/data-manager/basic/filter-modal.component.d.ts +13 -0
  82. package/lib/modules/data-manager/data-manager/basic/filters.d.ts +4 -0
  83. package/lib/modules/data-manager/data-manager/basic/view-grid.component.d.ts +20 -0
  84. package/lib/modules/data-manager/data-manager/basic/view-repeater.component.d.ts +15 -0
  85. package/lib/modules/datetime/date-pipe/basic/example.component.d.ts +6 -0
  86. package/lib/modules/datetime/date-range-picker/basic/example.component.d.ts +15 -0
  87. package/lib/modules/datetime/date-range-picker/custom-calculator/example.component.d.ts +18 -0
  88. package/lib/modules/datetime/date-range-picker/help-key/example.component.d.ts +15 -0
  89. package/lib/modules/datetime/datepicker/basic/example.component.d.ts +15 -0
  90. package/lib/modules/datetime/datepicker/custom-dates/example.component.d.ts +11 -0
  91. package/lib/modules/datetime/datepicker/fuzzy/example.component.d.ts +11 -0
  92. package/lib/modules/datetime/timepicker/basic/example.component.d.ts +16 -0
  93. package/lib/modules/errors/error/embedded/example.component.d.ts +6 -0
  94. package/lib/modules/errors/error/modal/example.component.d.ts +7 -0
  95. package/lib/modules/flyout/flyout/basic/example.component.d.ts +9 -0
  96. package/lib/modules/flyout/flyout/basic/flyout.component.d.ts +5 -0
  97. package/lib/modules/flyout/flyout/custom-headers/example.component.d.ts +9 -0
  98. package/lib/modules/flyout/flyout/custom-headers/flyout.component.d.ts +5 -0
  99. package/lib/modules/forms/character-count/example.component.d.ts +11 -0
  100. package/lib/modules/forms/checkbox/basic/example.component.d.ts +11 -0
  101. package/lib/modules/forms/checkbox/help-key/example.component.d.ts +11 -0
  102. package/lib/modules/forms/checkbox/icon-group/example.component.d.ts +9 -0
  103. package/lib/modules/forms/field-group/basic/example.component.d.ts +11 -0
  104. package/lib/modules/forms/field-group/help-key/example.component.d.ts +10 -0
  105. package/lib/modules/forms/file-attachment/basic/example.component.d.ts +14 -0
  106. package/lib/modules/forms/file-attachment/help-key/example.component.d.ts +14 -0
  107. package/lib/modules/forms/file-drop/basic/example.component.d.ts +17 -0
  108. package/lib/modules/forms/file-drop/help-key/example.component.d.ts +19 -0
  109. package/lib/modules/forms/input-box/basic/example.component.d.ts +16 -0
  110. package/lib/modules/forms/radio/help-key/example.component.d.ts +23 -0
  111. package/lib/modules/forms/radio/icon/example.component.d.ts +15 -0
  112. package/lib/modules/forms/radio/standard/example.component.d.ts +25 -0
  113. package/lib/modules/forms/selection-box/checkbox/example.component.d.ts +16 -0
  114. package/lib/modules/forms/selection-box/radio/example.component.d.ts +9 -0
  115. package/lib/modules/forms/toggle-switch/basic/example.component.d.ts +9 -0
  116. package/lib/modules/forms/toggle-switch/help-key/example.component.d.ts +8 -0
  117. package/lib/modules/help-inline/basic/example.component.d.ts +6 -0
  118. package/lib/modules/icon/basic/example.component.d.ts +5 -0
  119. package/lib/modules/icon/icon-button/example.component.d.ts +7 -0
  120. package/lib/modules/indicators/alert/basic/example.component.d.ts +7 -0
  121. package/lib/modules/indicators/illustration/basic/example.component.d.ts +5 -0
  122. package/lib/modules/indicators/illustration/basic/illustration-demo-resolver.service.d.ts +7 -0
  123. package/lib/modules/indicators/key-info/basic/example.component.d.ts +10 -0
  124. package/lib/modules/indicators/key-info/help-key/example.component.d.ts +10 -0
  125. package/lib/modules/indicators/label/basic/example.component.d.ts +14 -0
  126. package/lib/modules/indicators/status-indicator/basic/example.component.d.ts +5 -0
  127. package/lib/modules/indicators/status-indicator/help-key/example.component.d.ts +5 -0
  128. package/lib/modules/indicators/text-highlight/basic/example.component.d.ts +7 -0
  129. package/lib/modules/indicators/tokens/basic/example.component.d.ts +9 -0
  130. package/lib/modules/indicators/tokens/custom/example.component.d.ts +26 -0
  131. package/lib/modules/indicators/wait/element/example.component.d.ts +6 -0
  132. package/lib/modules/indicators/wait/page/example.component.d.ts +10 -0
  133. package/lib/modules/inline-form/inline-form/basic/example.component.d.ts +18 -0
  134. package/lib/modules/inline-form/inline-form/custom-buttons/example.component.d.ts +20 -0
  135. package/lib/modules/inline-form/inline-form/repeaters/example.component.d.ts +25 -0
  136. package/lib/modules/layout/action-button/basic/example.component.d.ts +7 -0
  137. package/lib/modules/layout/action-button/permalink/example.component.d.ts +8 -0
  138. package/lib/modules/layout/back-to-top/infinite-scroll/example.component.d.ts +20 -0
  139. package/lib/modules/layout/back-to-top/infinite-scroll/person.d.ts +4 -0
  140. package/lib/modules/layout/back-to-top/repeater/example.component.d.ts +9 -0
  141. package/lib/modules/layout/box/basic/example.component.d.ts +5 -0
  142. package/lib/modules/layout/box/help-key/example.component.d.ts +5 -0
  143. package/lib/modules/layout/card/basic/example.component.d.ts +10 -0
  144. package/lib/modules/layout/definition-list/basic/example.component.d.ts +9 -0
  145. package/lib/modules/layout/description-list/help-key/example.component.d.ts +10 -0
  146. package/lib/modules/layout/description-list/horizontal/example.component.d.ts +10 -0
  147. package/lib/modules/layout/description-list/inline-help/example.component.d.ts +11 -0
  148. package/lib/modules/layout/description-list/long-description/example.component.d.ts +9 -0
  149. package/lib/modules/layout/description-list/vertical/example.component.d.ts +10 -0
  150. package/lib/modules/layout/fluid-grid/example.component.d.ts +8 -0
  151. package/lib/modules/layout/format/example.component.d.ts +5 -0
  152. package/lib/modules/layout/inline-delete/custom/example.component.d.ts +10 -0
  153. package/lib/modules/layout/inline-delete/repeater/example.component.d.ts +18 -0
  154. package/lib/modules/layout/page/layout-fit/example.component.d.ts +5 -0
  155. package/lib/modules/layout/page-summary/basic/example.component.d.ts +13 -0
  156. package/lib/modules/layout/text-expand/inline/example.component.d.ts +6 -0
  157. package/lib/modules/layout/text-expand/modal/example.component.d.ts +6 -0
  158. package/lib/modules/layout/text-expand/newline/example.component.d.ts +6 -0
  159. package/lib/modules/layout/text-expand-repeater/example.component.d.ts +6 -0
  160. package/lib/modules/layout/toolbar/basic/example.component.d.ts +6 -0
  161. package/lib/modules/layout/toolbar/sectioned/example.component.d.ts +6 -0
  162. package/lib/modules/lists/filter/inline/example.component.d.ts +27 -0
  163. package/lib/modules/lists/filter/modal/example.component.d.ts +16 -0
  164. package/lib/modules/lists/filter/modal/filter-modal-context.d.ts +4 -0
  165. package/lib/modules/lists/filter/modal/filter-modal.component.d.ts +16 -0
  166. package/lib/modules/lists/filter/modal/filter.d.ts +5 -0
  167. package/lib/modules/lists/filter/modal/fruit.d.ts +5 -0
  168. package/lib/modules/lists/infinite-scroll/repeater/example.component.d.ts +12 -0
  169. package/lib/modules/lists/infinite-scroll/repeater/item.d.ts +3 -0
  170. package/lib/modules/lists/paging/basic/example.component.d.ts +6 -0
  171. package/lib/modules/lists/paging/with-content/demo-data.d.ts +5 -0
  172. package/lib/modules/lists/paging/with-content/demo-data.service.d.ts +8 -0
  173. package/lib/modules/lists/paging/with-content/example.component.d.ts +12 -0
  174. package/lib/modules/lists/paging/with-content/person.d.ts +4 -0
  175. package/lib/modules/lists/repeater/add-remove/example.component.d.ts +11 -0
  176. package/lib/modules/lists/repeater/add-remove/item.d.ts +6 -0
  177. package/lib/modules/lists/repeater/basic/example.component.d.ts +12 -0
  178. package/lib/modules/lists/repeater/inline-form/example.component.d.ts +25 -0
  179. package/lib/modules/lists/sort/basic/example.component.d.ts +24 -0
  180. package/lib/modules/lookup/autocomplete/advanced/example.component.d.ts +15 -0
  181. package/lib/modules/lookup/autocomplete/advanced/planet.d.ts +4 -0
  182. package/lib/modules/lookup/autocomplete/basic/example.component.d.ts +14 -0
  183. package/lib/modules/lookup/autocomplete/custom-search/example.component.d.ts +14 -0
  184. package/lib/modules/lookup/autocomplete/custom-search/ocean.d.ts +4 -0
  185. package/lib/modules/lookup/autocomplete/search-filters/example.component.d.ts +13 -0
  186. package/lib/modules/lookup/country-field/basic/example.component.d.ts +16 -0
  187. package/lib/modules/lookup/lookup/add-item/add-item-modal.component.d.ts +11 -0
  188. package/lib/modules/lookup/lookup/add-item/example.component.d.ts +20 -0
  189. package/lib/modules/lookup/lookup/add-item/example.service.d.ts +10 -0
  190. package/lib/modules/lookup/lookup/add-item/person.d.ts +4 -0
  191. package/lib/modules/lookup/lookup/add-item/search-results.d.ts +6 -0
  192. package/lib/modules/lookup/lookup/custom-picker/example.component.d.ts +19 -0
  193. package/lib/modules/lookup/lookup/custom-picker/example.service.d.ts +10 -0
  194. package/lib/modules/lookup/lookup/custom-picker/person.d.ts +4 -0
  195. package/lib/modules/lookup/lookup/custom-picker/picker-modal.component.d.ts +16 -0
  196. package/lib/modules/lookup/lookup/custom-picker/search-results.d.ts +6 -0
  197. package/lib/modules/lookup/lookup/multi-select/example.component.d.ts +19 -0
  198. package/lib/modules/lookup/lookup/multi-select/example.service.d.ts +10 -0
  199. package/lib/modules/lookup/lookup/multi-select/person.d.ts +3 -0
  200. package/lib/modules/lookup/lookup/multi-select/search-results.d.ts +6 -0
  201. package/lib/modules/lookup/lookup/result-templates/example.component.d.ts +20 -0
  202. package/lib/modules/lookup/lookup/result-templates/example.service.d.ts +10 -0
  203. package/lib/modules/lookup/lookup/result-templates/person.d.ts +4 -0
  204. package/lib/modules/lookup/lookup/result-templates/search-results.d.ts +6 -0
  205. package/lib/modules/lookup/lookup/single-select/example.component.d.ts +19 -0
  206. package/lib/modules/lookup/lookup/single-select/example.service.d.ts +10 -0
  207. package/lib/modules/lookup/lookup/single-select/person.d.ts +3 -0
  208. package/lib/modules/lookup/lookup/single-select/search-results.d.ts +6 -0
  209. package/lib/modules/lookup/search/basic/example.component.d.ts +13 -0
  210. package/lib/modules/lookup/search/basic/item.d.ts +4 -0
  211. package/lib/modules/lookup/selection-modal/add-item/add-item-modal.component.d.ts +11 -0
  212. package/lib/modules/lookup/selection-modal/add-item/example.component.d.ts +11 -0
  213. package/lib/modules/lookup/selection-modal/add-item/example.service.d.ts +10 -0
  214. package/lib/modules/lookup/selection-modal/add-item/person.d.ts +4 -0
  215. package/lib/modules/lookup/selection-modal/add-item/search-results.d.ts +6 -0
  216. package/lib/modules/lookup/selection-modal/basic/example.component.d.ts +9 -0
  217. package/lib/modules/lookup/selection-modal/basic/example.service.d.ts +8 -0
  218. package/lib/modules/lookup/selection-modal/basic/person.d.ts +4 -0
  219. package/lib/modules/lookup/selection-modal/basic/search-results.d.ts +6 -0
  220. package/lib/modules/modals/confirm/basic-with-controller/example.component.d.ts +8 -0
  221. package/lib/modules/modals/confirm/basic-with-harness/example.component.d.ts +12 -0
  222. package/lib/modules/modals/modal/basic-with-controller/example.component.d.ts +12 -0
  223. package/lib/modules/modals/modal/basic-with-controller/help.service.d.ts +13 -0
  224. package/lib/modules/modals/modal/basic-with-controller/modal-context.d.ts +8 -0
  225. package/lib/modules/modals/modal/basic-with-controller/modal.component.d.ts +13 -0
  226. package/lib/modules/modals/modal/basic-with-harness/context.d.ts +5 -0
  227. package/lib/modules/modals/modal/basic-with-harness/data.d.ts +3 -0
  228. package/lib/modules/modals/modal/basic-with-harness/data.service.d.ts +10 -0
  229. package/lib/modules/modals/modal/basic-with-harness/example.component.d.ts +11 -0
  230. package/lib/modules/modals/modal/basic-with-harness/modal.component.d.ts +13 -0
  231. package/lib/modules/modals/modal/basic-with-harness-help-key/context.d.ts +5 -0
  232. package/lib/modules/modals/modal/basic-with-harness-help-key/data.d.ts +3 -0
  233. package/lib/modules/modals/modal/basic-with-harness-help-key/data.service.d.ts +10 -0
  234. package/lib/modules/modals/modal/basic-with-harness-help-key/example.component.d.ts +11 -0
  235. package/lib/modules/modals/modal/basic-with-harness-help-key/modal.component.d.ts +13 -0
  236. package/lib/modules/modals/modal/with-error/context.d.ts +5 -0
  237. package/lib/modules/modals/modal/with-error/data.d.ts +3 -0
  238. package/lib/modules/modals/modal/with-error/data.service.d.ts +10 -0
  239. package/lib/modules/modals/modal/with-error/example.component.d.ts +11 -0
  240. package/lib/modules/modals/modal/with-error/modal.component.d.ts +16 -0
  241. package/lib/modules/navbar/navbar/example.component.d.ts +6 -0
  242. package/lib/modules/pages/action-hub/example.component.d.ts +35 -0
  243. package/lib/modules/pages/action-hub/modal-title-token.d.ts +2 -0
  244. package/lib/modules/pages/action-hub/settings-modal.component.d.ts +13 -0
  245. package/lib/modules/pages/page/home-page-blocks-layout-demo/example.component.d.ts +7 -0
  246. package/lib/modules/pages/page/home-page-blocks-layout-demo/home-page-content.component.d.ts +7 -0
  247. package/lib/modules/pages/page/home-page-blocks-layout-demo/tile-my-actions.component.d.ts +12 -0
  248. package/lib/modules/pages/page/home-page-blocks-layout-demo/tile-updates.component.d.ts +5 -0
  249. package/lib/modules/pages/page/list-page-list-layout-demo/dashboards-grid-context-menu.component.d.ts +11 -0
  250. package/lib/modules/pages/page/list-page-list-layout-demo/example.component.d.ts +5 -0
  251. package/lib/modules/pages/page/list-page-list-layout-demo/item.d.ts +5 -0
  252. package/lib/modules/pages/page/list-page-list-layout-demo/list-page-content.component.d.ts +13 -0
  253. package/lib/modules/pages/page/list-page-tabs-layout-demo/contact-context-menu.component.d.ts +11 -0
  254. package/lib/modules/pages/page/list-page-tabs-layout-demo/contact.d.ts +5 -0
  255. package/lib/modules/pages/page/list-page-tabs-layout-demo/example.component.d.ts +5 -0
  256. package/lib/modules/pages/page/list-page-tabs-layout-demo/list-page-contacts-grid.component.d.ts +18 -0
  257. package/lib/modules/pages/page/list-page-tabs-layout-demo/list-page-content.component.d.ts +10 -0
  258. package/lib/modules/pages/page/record-page-blocks-layout-demo/example.component.d.ts +12 -0
  259. package/lib/modules/pages/page/record-page-blocks-layout-demo/record-page-content.component.d.ts +27 -0
  260. package/lib/modules/pages/page/record-page-tabs-layout-demo/attachment.d.ts +6 -0
  261. package/lib/modules/pages/page/record-page-tabs-layout-demo/attachments-grid-context-menu.component.d.ts +11 -0
  262. package/lib/modules/pages/page/record-page-tabs-layout-demo/detail.d.ts +4 -0
  263. package/lib/modules/pages/page/record-page-tabs-layout-demo/example.component.d.ts +5 -0
  264. package/lib/modules/pages/page/record-page-tabs-layout-demo/record-page-attachments-tab.component.d.ts +13 -0
  265. package/lib/modules/pages/page/record-page-tabs-layout-demo/record-page-content.component.d.ts +7 -0
  266. package/lib/modules/pages/page/record-page-tabs-layout-demo/record-page-notes-tab.component.d.ts +10 -0
  267. package/lib/modules/pages/page/record-page-tabs-layout-demo/record-page-overview-tab.component.d.ts +25 -0
  268. package/lib/modules/pages/page/split-view-page-fit-layout-demo/example.component.d.ts +5 -0
  269. package/lib/modules/pages/page/split-view-page-fit-layout-demo/split-view-page-content.component.d.ts +31 -0
  270. package/lib/modules/phone-field/phone-field/basic/example.component.d.ts +10 -0
  271. package/lib/modules/popovers/dropdown/basic/example.component.d.ts +12 -0
  272. package/lib/modules/popovers/popover/basic/example.component.d.ts +10 -0
  273. package/lib/modules/popovers/popover/programmatic/example.component.d.ts +11 -0
  274. package/lib/modules/progress-indicator/passive-indicator/basic/example.component.d.ts +5 -0
  275. package/lib/modules/progress-indicator/waterfall-indicator/basic/example.component.d.ts +17 -0
  276. package/lib/modules/progress-indicator/waterfall-indicator/basic/modal-context.d.ts +4 -0
  277. package/lib/modules/progress-indicator/waterfall-indicator/basic/modal.component.d.ts +10 -0
  278. package/lib/modules/progress-indicator/wizard/basic/example.component.d.ts +7 -0
  279. package/lib/modules/progress-indicator/wizard/basic/modal.component.d.ts +18 -0
  280. package/lib/modules/router/href/basic/example.component.d.ts +5 -0
  281. package/lib/modules/split-view/split-view/basic/example.component.d.ts +33 -0
  282. package/lib/modules/split-view/split-view/basic/record.d.ts +9 -0
  283. package/lib/modules/split-view/split-view/page-bound/example.component.d.ts +26 -0
  284. package/lib/modules/split-view/split-view/page-bound/record.d.ts +9 -0
  285. package/lib/modules/tabs/sectioned-form/modal/address-form.component.d.ts +5 -0
  286. package/lib/modules/tabs/sectioned-form/modal/example.component.d.ts +7 -0
  287. package/lib/modules/tabs/sectioned-form/modal/information-form.component.d.ts +18 -0
  288. package/lib/modules/tabs/sectioned-form/modal/modal.component.d.ts +15 -0
  289. package/lib/modules/tabs/sectioned-form/modal/phone-form.component.d.ts +5 -0
  290. package/lib/modules/tabs/tabs/dynamic/example.component.d.ts +9 -0
  291. package/lib/modules/tabs/tabs/dynamic-add-close/example.component.d.ts +12 -0
  292. package/lib/modules/tabs/tabs/static/example.component.d.ts +5 -0
  293. package/lib/modules/tabs/tabs/static-add-close/example.component.d.ts +7 -0
  294. package/lib/modules/tabs/vertical-tabs/basic/example.component.d.ts +5 -0
  295. package/lib/modules/tabs/vertical-tabs/grouped/example.component.d.ts +7 -0
  296. package/lib/modules/tabs/vertical-tabs/grouped/group.d.ts +12 -0
  297. package/lib/modules/tabs/wizard/basic/example.component.d.ts +7 -0
  298. package/lib/modules/tabs/wizard/basic/modal.component.d.ts +19 -0
  299. package/lib/modules/text-editor/help-key/example.component.d.ts +10 -0
  300. package/lib/modules/text-editor/rich-text-display/example.component.d.ts +6 -0
  301. package/lib/modules/text-editor/text-editor/example.component.d.ts +10 -0
  302. package/lib/modules/theme/box/basic/example.component.d.ts +5 -0
  303. package/lib/modules/theme/status-indicator/basic/example.component.d.ts +5 -0
  304. package/lib/modules/tiles/tiles/basic/example.component.d.ts +7 -0
  305. package/lib/modules/tiles/tiles/basic/tile1.component.d.ts +6 -0
  306. package/lib/modules/tiles/tiles/basic/tile2.component.d.ts +5 -0
  307. package/lib/modules/toast/toast/basic/example.component.d.ts +8 -0
  308. package/lib/modules/toast/toast/custom-component/custom-context.d.ts +4 -0
  309. package/lib/modules/toast/toast/custom-component/custom-toast.component.d.ts +9 -0
  310. package/lib/modules/toast/toast/custom-component/example.component.d.ts +8 -0
  311. package/lib/modules/validation/email-validation/control-validator/example.component.d.ts +9 -0
  312. package/lib/modules/validation/email-validation/directive/example.component.d.ts +8 -0
  313. package/lib/modules/validation/url-validation/control-validator/example.component.d.ts +9 -0
  314. package/lib/modules/validation/url-validation/directive/example.component.d.ts +10 -0
  315. package/package.json +76 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skyux-code-examples.mjs","sources":["../../../../../libs/components/code-examples/src/lib/modules/avatar/avatar/example.service.ts","../../../../../libs/components/code-examples/src/lib/modules/avatar/avatar/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/avatar/avatar/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/core/id/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/core/id/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/forms/character-count/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/forms/character-count/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/help-inline/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/help-inline/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/icon/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/icon/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/icon/icon-button/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/icon/icon-button/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/fluid-grid/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/fluid-grid/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/format/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/format/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/text-expand-repeater/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/text-expand-repeater/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/navbar/navbar/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/navbar/navbar/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/action-hub/modal-title-token.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/action-hub/settings-modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/action-hub/settings-modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/action-hub/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/action-hub/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/text-editor/help-key/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/text-editor/help-key/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/text-editor/rich-text-display/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/text-editor/rich-text-display/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/text-editor/text-editor/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/text-editor/text-editor/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/autonumeric/autonumeric/currency/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/autonumeric/autonumeric/currency/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/autonumeric/autonumeric/international-formatting/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/autonumeric/autonumeric/international-formatting/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/autonumeric/autonumeric/options-provider/options-provider.ts","../../../../../libs/components/code-examples/src/lib/modules/autonumeric/autonumeric/options-provider/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/autonumeric/autonumeric/options-provider/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/autonumeric/autonumeric/preset/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/autonumeric/autonumeric/preset/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/action-bars/summary-action-bar/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/action-bars/summary-action-bar/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/action-bars/summary-action-bar/modal/modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/action-bars/summary-action-bar/modal/modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/action-bars/summary-action-bar/modal/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/action-bars/summary-action-bar/modal/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/action-bars/summary-action-bar/tab/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/action-bars/summary-action-bar/tab/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/angular-tree-component/angular-tree/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/angular-tree-component/angular-tree/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/angular-tree-component/angular-tree/help-key/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/angular-tree-component/angular-tree/help-key/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/basic/context-menu.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/basic/context-menu.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/basic/data.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/basic/edit-modal-context.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/basic/mark-inactive.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/basic/mark-inactive.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/basic/edit-modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/basic/edit-modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/data-manager-added/data.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/data-manager-added/edit-modal-context.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/data-manager-added/edit-modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/data-manager-added/edit-modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/data-manager-added/filter-modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/data-manager-added/filter-modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/data-manager-added/context-menu.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/data-manager-added/context-menu.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/data-manager-added/view-grid.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/data-manager-added/view-grid.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/data-manager-added/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/data-manager-added/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/focus/data.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/focus/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/focus/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/basic/context-menu.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/basic/context-menu.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/basic/data.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/inline-help/context-menu.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/inline-help/context-menu.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/inline-help/data.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/inline-help/edit-modal-context.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/inline-help/edit-modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/inline-help/edit-modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/inline-help/inline-help.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/inline-help/inline-help.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/inline-help/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-entry-grid/inline-help/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/basic-multiselect/context-menu.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/basic-multiselect/context-menu.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/basic-multiselect/data.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/basic-multiselect/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/basic-multiselect/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/data-manager/data.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/data-manager/filter-modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/data-manager/filter-modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/data-manager/context-menu.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/data-manager/context-menu.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/data-manager/view-grid.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/data-manager/view-grid.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/data-manager/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/data-manager/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/data-manager-multiselect/data.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/data-manager-multiselect/filter-modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/data-manager-multiselect/filter-modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/data-manager-multiselect/context-menu.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/data-manager-multiselect/context-menu.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/data-manager-multiselect/view-grid.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/data-manager-multiselect/view-grid.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/data-manager-multiselect/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/data-manager-multiselect/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/inline-help/context-menu.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/inline-help/context-menu.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/inline-help/data.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/inline-help/inline-help.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/inline-help/inline-help.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/inline-help/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/inline-help/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/paging/context-menu.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/paging/context-menu.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/paging/data.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/paging/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/paging/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/template-ref-column/data.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/template-ref-column/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/template-ref-column/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/top-scroll/context-menu.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/top-scroll/context-menu.component.html","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/top-scroll/data.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/top-scroll/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/ag-grid/data-grid/top-scroll/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/colorpicker/colorpicker/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/colorpicker/colorpicker/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/colorpicker/colorpicker/help-key/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/colorpicker/colorpicker/help-key/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/colorpicker/colorpicker/programmatic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/colorpicker/colorpicker/programmatic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/core/media-query/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/core/media-query/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/core/media-query/responsive-host/child.component.ts","../../../../../libs/components/code-examples/src/lib/modules/core/media-query/responsive-host/container.component.ts","../../../../../libs/components/code-examples/src/lib/modules/core/media-query/responsive-host/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/core/media-query/responsive-host/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/core/numeric/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/core/numeric/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/datetime/date-range-picker/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/datetime/date-range-picker/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/datetime/date-range-picker/custom-calculator/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/datetime/date-range-picker/custom-calculator/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/datetime/date-range-picker/help-key/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/datetime/date-range-picker/help-key/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/data-manager/data-manager/basic/data.ts","../../../../../libs/components/code-examples/src/lib/modules/data-manager/data-manager/basic/filter-modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/data-manager/data-manager/basic/filter-modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/data-manager/data-manager/basic/view-grid.component.ts","../../../../../libs/components/code-examples/src/lib/modules/data-manager/data-manager/basic/view-grid.component.html","../../../../../libs/components/code-examples/src/lib/modules/data-manager/data-manager/basic/view-repeater.component.ts","../../../../../libs/components/code-examples/src/lib/modules/data-manager/data-manager/basic/view-repeater.component.html","../../../../../libs/components/code-examples/src/lib/modules/data-manager/data-manager/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/data-manager/data-manager/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/datetime/datepicker/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/datetime/datepicker/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/datetime/date-pipe/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/datetime/date-pipe/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/datetime/datepicker/fuzzy/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/datetime/datepicker/fuzzy/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/datetime/datepicker/custom-dates/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/datetime/datepicker/custom-dates/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/flyout/flyout/basic/flyout.component.ts","../../../../../libs/components/code-examples/src/lib/modules/flyout/flyout/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/flyout/flyout/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/datetime/timepicker/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/datetime/timepicker/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/flyout/flyout/custom-headers/flyout.component.ts","../../../../../libs/components/code-examples/src/lib/modules/flyout/flyout/custom-headers/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/flyout/flyout/custom-headers/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/errors/error/embedded/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/errors/error/embedded/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/forms/checkbox/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/forms/checkbox/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/errors/error/modal/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/errors/error/modal/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/forms/checkbox/help-key/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/forms/checkbox/help-key/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/forms/field-group/help-key/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/forms/field-group/help-key/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/forms/checkbox/icon-group/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/forms/checkbox/icon-group/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/forms/file-attachment/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/forms/file-attachment/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/forms/field-group/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/forms/field-group/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/forms/file-drop/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/forms/file-drop/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/forms/file-attachment/help-key/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/forms/file-attachment/help-key/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/forms/file-drop/help-key/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/forms/file-drop/help-key/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/forms/input-box/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/forms/input-box/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/forms/radio/help-key/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/forms/radio/help-key/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/forms/radio/icon/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/forms/radio/icon/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/forms/radio/standard/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/forms/radio/standard/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/forms/selection-box/radio/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/forms/selection-box/radio/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/forms/selection-box/checkbox/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/forms/selection-box/checkbox/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/forms/toggle-switch/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/forms/toggle-switch/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/forms/toggle-switch/help-key/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/forms/toggle-switch/help-key/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/indicators/alert/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/indicators/alert/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/indicators/illustration/basic/illustration-demo-resolver.service.ts","../../../../../libs/components/code-examples/src/lib/modules/indicators/illustration/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/indicators/illustration/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/indicators/key-info/help-key/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/indicators/key-info/help-key/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/indicators/label/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/indicators/label/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/indicators/key-info/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/indicators/key-info/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/indicators/status-indicator/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/indicators/status-indicator/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/indicators/status-indicator/help-key/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/indicators/status-indicator/help-key/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/indicators/tokens/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/indicators/tokens/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/indicators/text-highlight/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/indicators/text-highlight/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/indicators/tokens/custom/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/indicators/tokens/custom/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/inline-form/inline-form/repeaters/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/inline-form/inline-form/repeaters/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/inline-form/inline-form/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/inline-form/inline-form/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/indicators/wait/element/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/indicators/wait/element/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/inline-form/inline-form/custom-buttons/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/inline-form/inline-form/custom-buttons/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/back-to-top/infinite-scroll/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/back-to-top/infinite-scroll/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/indicators/wait/page/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/indicators/wait/page/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/action-button/permalink/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/action-button/permalink/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/action-button/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/action-button/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/back-to-top/repeater/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/back-to-top/repeater/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/box/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/box/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/card/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/card/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/box/help-key/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/box/help-key/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/description-list/help-key/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/description-list/help-key/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/definition-list/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/definition-list/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/description-list/inline-help/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/description-list/inline-help/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/description-list/horizontal/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/description-list/horizontal/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/inline-delete/custom/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/inline-delete/custom/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/description-list/long-description/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/description-list/long-description/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/inline-delete/repeater/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/inline-delete/repeater/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/description-list/vertical/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/description-list/vertical/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/page/layout-fit/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/page/layout-fit/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/text-expand/inline/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/text-expand/inline/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/page-summary/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/page-summary/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/text-expand/modal/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/text-expand/modal/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/toolbar/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/toolbar/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/text-expand/newline/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/text-expand/newline/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/layout/toolbar/sectioned/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/layout/toolbar/sectioned/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lists/filter/inline/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lists/filter/inline/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lists/filter/modal/filter-modal-context.ts","../../../../../libs/components/code-examples/src/lib/modules/lists/filter/modal/filter-modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lists/filter/modal/filter-modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/lists/filter/modal/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lists/filter/modal/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lists/paging/with-content/demo-data.service.ts","../../../../../libs/components/code-examples/src/lib/modules/lists/paging/with-content/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lists/paging/with-content/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lists/paging/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lists/paging/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lists/repeater/add-remove/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lists/repeater/add-remove/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lists/infinite-scroll/repeater/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lists/infinite-scroll/repeater/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lists/repeater/inline-form/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lists/repeater/inline-form/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lists/repeater/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lists/repeater/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lists/sort/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lists/sort/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lookup/autocomplete/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/autocomplete/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lookup/autocomplete/custom-search/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/autocomplete/custom-search/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lookup/autocomplete/advanced/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/autocomplete/advanced/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lookup/autocomplete/search-filters/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/autocomplete/search-filters/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lookup/country-field/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/country-field/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lookup/lookup/custom-picker/example.service.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/lookup/custom-picker/picker-modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/lookup/custom-picker/picker-modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/lookup/lookup/custom-picker/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/lookup/custom-picker/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lookup/lookup/add-item/add-item-modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/lookup/add-item/add-item-modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/lookup/lookup/add-item/example.service.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/lookup/add-item/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/lookup/add-item/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lookup/lookup/multi-select/example.service.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/lookup/multi-select/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/lookup/multi-select/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lookup/lookup/result-templates/example.service.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/lookup/result-templates/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/lookup/result-templates/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lookup/lookup/single-select/example.service.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/lookup/single-select/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/lookup/single-select/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lookup/search/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/search/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lookup/selection-modal/add-item/add-item-modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/selection-modal/add-item/add-item-modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/lookup/selection-modal/add-item/example.service.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/selection-modal/add-item/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/selection-modal/add-item/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/lookup/selection-modal/basic/example.service.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/selection-modal/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/lookup/selection-modal/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/modals/confirm/basic-with-controller/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/basic-with-controller/help.service.ts","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/basic-with-controller/modal-context.ts","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/basic-with-controller/modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/basic-with-controller/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/modals/confirm/basic-with-harness/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/modals/confirm/basic-with-harness/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/basic-with-harness/context.ts","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/basic-with-harness/data.service.ts","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/basic-with-harness/modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/basic-with-harness/modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/basic-with-harness/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/basic-with-harness/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/basic-with-harness-help-key/context.ts","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/basic-with-harness-help-key/data.service.ts","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/basic-with-harness-help-key/modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/basic-with-harness-help-key/modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/basic-with-harness-help-key/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/basic-with-harness-help-key/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/with-error/context.ts","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/with-error/data.service.ts","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/with-error/modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/with-error/modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/with-error/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/modals/modal/with-error/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/home-page-blocks-layout-demo/tile-my-actions.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/home-page-blocks-layout-demo/tile-my-actions.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/home-page-blocks-layout-demo/tile-updates.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/home-page-blocks-layout-demo/tile-updates.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/home-page-blocks-layout-demo/home-page-content.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/home-page-blocks-layout-demo/home-page-content.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/home-page-blocks-layout-demo/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/home-page-blocks-layout-demo/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/list-page-tabs-layout-demo/contact-context-menu.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/list-page-tabs-layout-demo/contact-context-menu.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/list-page-tabs-layout-demo/list-page-contacts-grid.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/list-page-tabs-layout-demo/list-page-contacts-grid.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/list-page-tabs-layout-demo/list-page-content.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/list-page-tabs-layout-demo/list-page-content.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/list-page-tabs-layout-demo/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/list-page-tabs-layout-demo/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/list-page-list-layout-demo/dashboards-grid-context-menu.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/list-page-list-layout-demo/dashboards-grid-context-menu.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/list-page-list-layout-demo/list-page-content.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/list-page-list-layout-demo/list-page-content.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/list-page-list-layout-demo/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/list-page-list-layout-demo/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/record-page-blocks-layout-demo/record-page-content.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/record-page-blocks-layout-demo/record-page-content.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/record-page-blocks-layout-demo/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/record-page-blocks-layout-demo/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/record-page-tabs-layout-demo/attachments-grid-context-menu.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/record-page-tabs-layout-demo/attachments-grid-context-menu.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/record-page-tabs-layout-demo/record-page-attachments-tab.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/record-page-tabs-layout-demo/record-page-attachments-tab.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/record-page-tabs-layout-demo/record-page-notes-tab.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/record-page-tabs-layout-demo/record-page-notes-tab.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/record-page-tabs-layout-demo/record-page-overview-tab.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/record-page-tabs-layout-demo/record-page-overview-tab.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/record-page-tabs-layout-demo/record-page-content.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/record-page-tabs-layout-demo/record-page-content.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/record-page-tabs-layout-demo/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/record-page-tabs-layout-demo/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/split-view-page-fit-layout-demo/split-view-page-content.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/split-view-page-fit-layout-demo/split-view-page-content.component.html","../../../../../libs/components/code-examples/src/lib/modules/pages/page/split-view-page-fit-layout-demo/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/pages/page/split-view-page-fit-layout-demo/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/phone-field/phone-field/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/phone-field/phone-field/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/popovers/dropdown/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/popovers/dropdown/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/popovers/popover/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/popovers/popover/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/popovers/popover/programmatic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/popovers/popover/programmatic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/split-view/split-view/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/split-view/split-view/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/split-view/split-view/page-bound/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/split-view/split-view/page-bound/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/progress-indicator/passive-indicator/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/progress-indicator/passive-indicator/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/progress-indicator/wizard/basic/modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/progress-indicator/wizard/basic/modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/progress-indicator/wizard/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/progress-indicator/wizard/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/router/href/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/router/href/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/progress-indicator/waterfall-indicator/basic/modal-context.ts","../../../../../libs/components/code-examples/src/lib/modules/progress-indicator/waterfall-indicator/basic/modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/progress-indicator/waterfall-indicator/basic/modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/progress-indicator/waterfall-indicator/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/progress-indicator/waterfall-indicator/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/tabs/sectioned-form/modal/address-form.component.ts","../../../../../libs/components/code-examples/src/lib/modules/tabs/sectioned-form/modal/information-form.component.ts","../../../../../libs/components/code-examples/src/lib/modules/tabs/sectioned-form/modal/information-form.component.html","../../../../../libs/components/code-examples/src/lib/modules/tabs/sectioned-form/modal/phone-form.component.ts","../../../../../libs/components/code-examples/src/lib/modules/tabs/sectioned-form/modal/modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/tabs/sectioned-form/modal/modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/tabs/sectioned-form/modal/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/tabs/sectioned-form/modal/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/tabs/tabs/dynamic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/tabs/tabs/dynamic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/tabs/tabs/static/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/tabs/tabs/static/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/tabs/tabs/static-add-close/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/tabs/tabs/static-add-close/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/tabs/tabs/dynamic-add-close/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/tabs/tabs/dynamic-add-close/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/tabs/vertical-tabs/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/tabs/vertical-tabs/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/tabs/wizard/basic/modal.component.ts","../../../../../libs/components/code-examples/src/lib/modules/tabs/wizard/basic/modal.component.html","../../../../../libs/components/code-examples/src/lib/modules/tabs/wizard/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/tabs/wizard/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/tabs/vertical-tabs/grouped/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/tabs/vertical-tabs/grouped/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/theme/box/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/theme/status-indicator/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/tiles/tiles/basic/tile1.component.ts","../../../../../libs/components/code-examples/src/lib/modules/tiles/tiles/basic/tile1.component.html","../../../../../libs/components/code-examples/src/lib/modules/tiles/tiles/basic/tile2.component.ts","../../../../../libs/components/code-examples/src/lib/modules/tiles/tiles/basic/tile2.component.html","../../../../../libs/components/code-examples/src/lib/modules/tiles/tiles/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/tiles/tiles/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/toast/toast/custom-component/custom-context.ts","../../../../../libs/components/code-examples/src/lib/modules/toast/toast/custom-component/custom-toast.component.ts","../../../../../libs/components/code-examples/src/lib/modules/toast/toast/custom-component/custom-toast.component.html","../../../../../libs/components/code-examples/src/lib/modules/toast/toast/custom-component/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/toast/toast/custom-component/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/toast/toast/basic/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/toast/toast/basic/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/validation/email-validation/directive/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/validation/email-validation/directive/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/validation/email-validation/control-validator/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/validation/email-validation/control-validator/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/validation/url-validation/control-validator/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/validation/url-validation/control-validator/example.component.html","../../../../../libs/components/code-examples/src/lib/modules/validation/url-validation/directive/example.component.ts","../../../../../libs/components/code-examples/src/lib/modules/validation/url-validation/directive/example.component.html","../../../../../libs/components/code-examples/src/skyux-code-examples.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\nimport { Observable, delay, of } from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DemoService {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n public uploadAvatar(_file: File): Observable<void> {\n // Simulate uploading the file to a web service.\n return of(undefined).pipe(delay(500));\n }\n}\n","import { Component, inject, signal } from '@angular/core';\nimport { SkyAvatarModule } from '@skyux/avatar';\nimport { SkyFileItem } from '@skyux/forms';\n\nimport { DemoService } from './example.service';\n\n@Component({\n selector: 'app-avatar-example',\n templateUrl: './example.component.html',\n imports: [SkyAvatarModule],\n})\nexport class AvatarExampleComponent {\n #exampleSvc = inject(DemoService);\n\n protected readonly avatar = signal<string | File>(\n 'https://imgur.com/tBiGElW.png',\n );\n protected readonly name = signal('Robert C. Hernandez');\n\n protected onAvatarChanged(fileItem: SkyFileItem): void {\n /**\n * This is where you might upload the new avatar,\n * but for this example we'll just update it locally.\n */\n if (fileItem) {\n this.#exampleSvc.uploadAvatar(fileItem.file).subscribe(() => {\n this.avatar.set(fileItem.file);\n });\n }\n }\n}\n","<sky-avatar\n data-sky-id=\"user-profile-avatar\"\n [canChange]=\"true\"\n [maxFileSize]=\"1000\"\n [name]=\"name()\"\n [src]=\"avatar()\"\n (avatarChanged)=\"onAvatarChanged($event)\"\n/>\n","import { Component } from '@angular/core';\nimport { SkyIdModule } from '@skyux/core';\n\n@Component({\n selector: 'app-core-id-example',\n templateUrl: './example.component.html',\n imports: [SkyIdModule],\n})\nexport class CoreIdExampleComponent {}\n","<div #myDiv=\"skyId\" skyId>This DIV's id is '{{ myDiv.id }}'</div>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyIdModule } from '@skyux/core';\nimport { SkyCharacterCounterModule, SkyInputBoxModule } from '@skyux/forms';\nimport { SkyStatusIndicatorModule } from '@skyux/indicators';\n\n@Component({\n selector: 'app-forms-character-count-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyCharacterCounterModule,\n SkyIdModule,\n SkyInputBoxModule,\n SkyStatusIndicatorModule,\n ],\n})\nexport class FormsCharacterCountExampleComponent {\n protected description: FormControl;\n protected formGroup: FormGroup;\n protected maxDescriptionCharacterCount = 50;\n\n readonly #formBuilder = inject(FormBuilder);\n\n constructor() {\n this.description = this.#formBuilder.control(\n 'Boys and Girls Club of South Carolina donation',\n );\n\n this.formGroup = this.#formBuilder.group({\n description: this.description,\n });\n }\n}\n","<form [formGroup]=\"formGroup\">\n <sky-input-box stacked=\"true\" labelText=\"Transaction description\">\n <sky-character-counter-indicator\n #descriptionIndicator\n data-sky-id=\"description-indicator\"\n />\n\n <input\n #descriptionInput=\"skyId\"\n class=\"sky-form-control description-input\"\n formControlName=\"description\"\n skyCharacterCounter\n skyId\n type=\"text\"\n [attr.aria-describedby]=\"characterCountError.id\"\n [skyCharacterCounterIndicator]=\"descriptionIndicator\"\n [skyCharacterCounterLimit]=\"maxDescriptionCharacterCount\"\n />\n\n <span #characterCountError=\"skyId\" class=\"sky-error-indicator\" skyId>\n @if (description.errors?.['skyCharacterCounter']) {\n <sky-status-indicator\n data-sky-id=\"description-status-indicator-over-limit\"\n descriptionType=\"error\"\n indicatorType=\"danger\"\n >\n Limit Transaction description to\n {{ maxDescriptionCharacterCount }} characters.\n </sky-status-indicator>\n }\n </span>\n </sky-input-box>\n</form>\n","import { Component } from '@angular/core';\nimport { SkyHelpInlineModule } from '@skyux/help-inline';\n\n@Component({\n selector: 'app-help-inline-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyHelpInlineModule],\n})\nexport class HelpInlineBasicExampleComponent {\n public onActionClick(): void {\n alert('Use help inline to show supplemental information to the user.');\n }\n}\n","<h3>\n Projected revenue\n <sky-help-inline\n data-sky-id=\"help-inline-example\"\n ariaLabel=\"Information about Projected revenue\"\n (actionClick)=\"onActionClick()\"\n />\n</h3>\n","import { Component } from '@angular/core';\nimport { SkyIconModule } from '@skyux/icon';\n\n@Component({\n selector: 'app-icon-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyIconModule],\n})\nexport class IconBasicExampleComponent {}\n","<sky-icon icon=\"calendar\" />\n<sky-icon icon=\"calendar\" size=\"lg\" />\n<sky-icon icon=\"calendar\" size=\"2x\" />\n<sky-icon icon=\"calendar\" variant=\"line\" size=\"3x\" />\n<sky-icon\n data-sky-id=\"icon-example\"\n icon=\"calendar\"\n variant=\"solid\"\n size=\"4x\"\n [fixedWidth]=\"true\"\n/>\n\n<div>\n <sky-icon icon=\"bars\" size=\"2x\" />\n</div>\n\n<div>\n <sky-icon icon=\"chevron-down\" size=\"2x\" />\n</div>\n\n<div>\n <sky-icon icon=\"bars\" size=\"2x\" [fixedWidth]=\"true\" />\n</div>\n\n<div>\n <sky-icon icon=\"chevron-down\" size=\"2x\" [fixedWidth]=\"true\" />\n</div>\n","import { Component } from '@angular/core';\nimport { SkyIconModule } from '@skyux/icon';\n\n@Component({\n selector: 'app-icon-icon-button-example',\n templateUrl: './example.component.html',\n imports: [SkyIconModule],\n})\nexport class IconIconButtonExampleComponent {\n protected textButtonClick(): void {\n alert('Text with icon button clicked');\n }\n\n protected iconOnlyButtonClick(): void {\n alert('Icon only button clicked');\n }\n}\n","<button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"textButtonClick()\"\n>\n Save\n <sky-icon data-sky-id=\"text-button-icon\" icon=\"save\" />\n</button>\n\n<button\n class=\"sky-btn sky-btn-icon-borderless\"\n type=\"button\"\n (click)=\"iconOnlyButtonClick()\"\n>\n <sky-icon data-sky-id=\"button-icon\" icon=\"edit\" size=\"lg\" />\n</button>\n","import { Component } from '@angular/core';\nimport { SkyFluidGridGutterSizeType, SkyFluidGridModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-layout-fluid-grid-example',\n templateUrl: './example.component.html',\n styles: [\n `\n .highlight-columns .sky-column {\n background-color: #97eced;\n border: 1px solid #56e0e1;\n overflow-wrap: break-word;\n }\n `,\n ],\n imports: [SkyFluidGridModule],\n})\nexport class LayoutFluidGridExampleComponent {\n public gutterSize: SkyFluidGridGutterSizeType | undefined;\n public disableMargin = false;\n}\n","<div class=\"highlight-columns\">\n <sky-fluid-grid\n data-sky-id=\"fluid-grid\"\n [disableMargin]=\"disableMargin\"\n [gutterSize]=\"gutterSize\"\n >\n <sky-row data-sky-id=\"test-row\">\n <sky-column data-sky-id=\"test-column\" [screenSmall]=\"1\">\n [screenSmall]=\"1\"\n </sky-column>\n <sky-column [screenSmall]=\"1\"> [screenSmall]=\"1\" </sky-column>\n <sky-column [screenSmall]=\"1\"> [screenSmall]=\"1\" </sky-column>\n <sky-column [screenSmall]=\"1\"> [screenSmall]=\"1\" </sky-column>\n <sky-column [screenSmall]=\"1\"> [screenSmall]=\"1\" </sky-column>\n <sky-column [screenSmall]=\"1\"> [screenSmall]=\"1\" </sky-column>\n <sky-column [screenSmall]=\"1\"> [screenSmall]=\"1\" </sky-column>\n <sky-column [screenSmall]=\"1\"> [screenSmall]=\"1\" </sky-column>\n <sky-column [screenSmall]=\"1\"> [screenSmall]=\"1\" </sky-column>\n <sky-column [screenSmall]=\"1\"> [screenSmall]=\"1\" </sky-column>\n <sky-column [screenSmall]=\"1\"> [screenSmall]=\"1\" </sky-column>\n <sky-column [screenSmall]=\"1\"> [screenSmall]=\"1\" </sky-column>\n </sky-row>\n\n <sky-row>\n <sky-column [screenSmall]=\"2\"> [screenSmall]=\"2\" </sky-column>\n <sky-column [screenSmall]=\"2\"> [screenSmall]=\"2\" </sky-column>\n <sky-column [screenSmall]=\"2\"> [screenSmall]=\"2\" </sky-column>\n <sky-column [screenSmall]=\"2\"> [screenSmall]=\"2\" </sky-column>\n <sky-column [screenSmall]=\"2\"> [screenSmall]=\"2\" </sky-column>\n <sky-column [screenSmall]=\"2\"> [screenSmall]=\"2\" </sky-column>\n </sky-row>\n\n <sky-row>\n <sky-column [screenSmall]=\"3\"> [screenSmall]=\"3\" </sky-column>\n <sky-column [screenSmall]=\"3\"> [screenSmall]=\"3\" </sky-column>\n <sky-column [screenSmall]=\"3\"> [screenSmall]=\"3\" </sky-column>\n <sky-column [screenSmall]=\"3\"> [screenSmall]=\"3\" </sky-column>\n </sky-row>\n\n <sky-row>\n <sky-column [screenSmall]=\"4\"> [screenSmall]=\"4\" </sky-column>\n <sky-column [screenSmall]=\"4\"> [screenSmall]=\"4\" </sky-column>\n <sky-column [screenSmall]=\"4\"> [screenSmall]=\"4\" </sky-column>\n </sky-row>\n\n <sky-row>\n <sky-column [screenSmall]=\"5\"> [screenSmall]=\"5\" </sky-column>\n <sky-column [screenSmall]=\"7\"> [screenSmall]=\"7\" </sky-column>\n </sky-row>\n\n <sky-row>\n <sky-column [screenSmall]=\"6\"> [screenSmall]=\"6\" </sky-column>\n <sky-column [screenSmall]=\"6\"> [screenSmall]=\"6\" </sky-column>\n </sky-row>\n\n <sky-row>\n <sky-column [screenSmall]=\"8\"> [screenSmall]=\"8\" </sky-column>\n <sky-column [screenSmall]=\"4\"> [screenSmall]=\"4\" </sky-column>\n </sky-row>\n\n <sky-row>\n <sky-column [screenSmall]=\"9\"> [screenSmall]=\"9\" </sky-column>\n <sky-column [screenSmall]=\"3\"> [screenSmall]=\"3\" </sky-column>\n </sky-row>\n\n <sky-row>\n <sky-column [screenSmall]=\"10\"> [screenSmall]=\"10\" </sky-column>\n <sky-column [screenSmall]=\"2\"> [screenSmall]=\"2\" </sky-column>\n </sky-row>\n\n <sky-row>\n <sky-column [screenSmall]=\"11\"> [screenSmall]=\"11\" </sky-column>\n <sky-column [screenSmall]=\"1\"> [screenSmall]=\"1\" </sky-column>\n </sky-row>\n\n <sky-row>\n <sky-column\n data-sky-id=\"dynamic-column\"\n [screenXSmall]=\"6\"\n [screenSmall]=\"8\"\n [screenMedium]=\"9\"\n [screenLarge]=\"10\"\n >\n [screenXSmall]=\"6\" [screenSmall]=\"8\" [screenMedium]=\"9\"\n [screenLarge]=\"10\"\n </sky-column>\n <sky-column\n [screenXSmall]=\"6\"\n [screenSmall]=\"4\"\n [screenMedium]=\"3\"\n [screenLarge]=\"2\"\n >\n [screenXSmall]=\"6\" [screenSmall]=\"4\" [screenMedium]=\"3\"\n [screenLarge]=\"2\"\n </sky-column>\n </sky-row>\n\n <sky-row data-sky-id=\"reverse-row\" [reverseColumnOrder]=\"true\">\n <sky-column [screenSmall]=\"4\"> First column </sky-column>\n <sky-column [screenSmall]=\"4\"> Second column </sky-column>\n <sky-column [screenSmall]=\"4\"> Third column </sky-column>\n </sky-row>\n </sky-fluid-grid>\n</div>\n","import { Component } from '@angular/core';\nimport { SkyFormatModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-layout-format-example',\n templateUrl: './example.component.html',\n styleUrls: ['./example.component.scss'],\n imports: [SkyFormatModule],\n})\nexport class LayoutFormatExampleComponent {}\n","<sky-format\n text=\"{0} is an important number. {1} is important, too, but not as important as {0}.\"\n [args]=\"[value1, value2]\"\n/>\n\n<ng-template #value1>\n <strong class=\"number-large\">39,210</strong>\n</ng-template>\n\n<ng-template #value2>\n <strong class=\"number-medium\">78</strong>\n</ng-template>\n","import { Component } from '@angular/core';\nimport { SkyTextExpandRepeaterModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-layout-text-expand-repeater-example',\n templateUrl: './example.component.html',\n imports: [SkyTextExpandRepeaterModule],\n})\nexport class LayoutTextExpandRepeaterExampleComponent {\n protected repeaterData: string[] = [\n 'Repeater item 1',\n 'Repeater item 2',\n 'Repeater item 3',\n 'Repeater item 4',\n 'Repeater item 5',\n ];\n}\n","<sky-text-expand-repeater [data]=\"repeaterData\" [maxItems]=\"2\" />\n","import { Component } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { SkyNavbarModule } from '@skyux/navbar';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\n@Component({\n selector: 'app-navbar-example',\n templateUrl: './example.component.html',\n imports: [RouterModule, SkyDropdownModule, SkyNavbarModule],\n})\nexport class NavbarExampleComponent {\n protected onDropdownItemClick(buttonText: string): void {\n alert(buttonText + ' button clicked!');\n }\n}\n","<sky-navbar>\n <sky-navbar-item>\n <a routerLink=\"/\" routerLinkActive=\"sky-navbar-item-active\">\n Selected item\n </a>\n </sky-navbar-item>\n <sky-navbar-item>\n <sky-dropdown>\n <sky-dropdown-button> Show dropdown </sky-dropdown-button>\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <a routerLink=\"/\" (click)=\"onDropdownItemClick('Item 1')\"> Item 1 </a>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <a routerLink=\"/\" (click)=\"onDropdownItemClick('Item 2')\"> Item 2 </a>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <a routerLink=\"/\" (click)=\"onDropdownItemClick('Item 3')\"> Item 3 </a>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n </sky-navbar-item>\n</sky-navbar>\n","import { InjectionToken } from '@angular/core';\n\nexport const MODAL_TITLE = new InjectionToken<string>('MODAL_TITLE');\n","import { Component, inject } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyColorpickerModule } from '@skyux/colorpicker';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\n\nimport { MODAL_TITLE } from './modal-title-token';\n\n@Component({\n selector: 'app-settings-modal',\n templateUrl: './settings-modal.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyColorpickerModule,\n SkyInputBoxModule,\n SkyModalModule,\n ],\n})\nexport class SettingsModalComponent {\n protected formGroup: FormGroup;\n protected fields: string[] = [];\n\n protected readonly modalInstance = inject(SkyModalInstance);\n protected readonly title = inject(MODAL_TITLE);\n readonly #formBuilder = inject(FormBuilder);\n\n constructor() {\n const controls: Record<string, AbstractControl> = {};\n\n for (let i = 1; i <= 5; i++) {\n const field = `${this.title} ${i}`;\n this.fields.push(field);\n controls[field] = this.#formBuilder.control('');\n }\n\n this.formGroup = this.#formBuilder.group(controls);\n\n this.modalInstance.closed.subscribe((args) => {\n if (args.reason === 'save') {\n console.log(this.formGroup.value);\n }\n });\n }\n}\n","<form [formGroup]=\"formGroup\" (submit)=\"modalInstance.save()\">\n <sky-modal data-sky-id=\"settings-modal\" [headingText]=\"title\">\n <sky-modal-content>\n @for (field of fields; track field) {\n <ng-container class=\"row\">\n @switch (title) {\n @case ('Color') {\n <sky-colorpicker #colorPicker stacked [labelText]=\"field\">\n <input\n type=\"text\"\n [formControlName]=\"field\"\n [skyColorpickerInput]=\"colorPicker\"\n />\n </sky-colorpicker>\n }\n @default {\n <sky-input-box stacked [labelText]=\"field\">\n <input type=\"text\" [formControlName]=\"field\" />\n </sky-input-box>\n }\n }\n </ng-container>\n }\n </sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-primary sky-margin-inline-sm\"\n type=\"submit\"\n >\n Save\n </button>\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n (click)=\"modalInstance.close()\"\n >\n Close\n </button>\n </sky-modal-footer>\n </sky-modal>\n</form>\n","import { Component } from '@angular/core';\nimport { SkyActionHubModule, SkyPageModalLinksInput } from '@skyux/pages';\n\nimport { MODAL_TITLE } from './modal-title-token';\nimport { SettingsModalComponent } from './settings-modal.component';\n\nconst pastHours = Array.from(Array(5).keys()).map((i) => {\n const date = new Date();\n date.setHours(date.getHours() - (i + 1));\n return date;\n});\n\n@Component({\n selector: 'app-pages-action-hub-example',\n templateUrl: './example.component.html',\n imports: [SkyActionHubModule],\n})\nexport class PagesActionHubExampleComponent {\n public buttons = [\n {\n label: 'Action 1',\n ariaLabel: 'Accounts action 1',\n permalink: {\n url: '#',\n },\n },\n {\n label: 'Action 2',\n ariaLabel: 'Accounts action 2',\n permalink: {\n url: '#',\n },\n },\n {\n label: 'Action 3',\n ariaLabel: 'Accounts action 3',\n permalink: {\n url: '#',\n },\n },\n ];\n\n public needsAttention = [\n {\n title: '9',\n message: 'updates from portal',\n permalink: {\n url: '#',\n },\n },\n {\n title: '8',\n message: 'new messages from online donation',\n permalink: {\n url: '#',\n },\n },\n {\n title: '7',\n message: 'possible duplicates from constituent lists',\n permalink: {\n url: '#',\n },\n },\n {\n title: '6',\n message: 'updates from portal',\n permalink: {\n url: '#',\n },\n },\n {\n title: '5',\n message: 'new messages from online donation',\n permalink: {\n url: '#',\n },\n },\n {\n title: '4',\n message: 'possible duplicates from constituent lists',\n permalink: {\n url: '#',\n },\n },\n {\n title: '3',\n message: 'update from portal',\n permalink: {\n url: '#',\n },\n },\n {\n title: '2',\n message: 'new messages from online donation',\n permalink: {\n url: '#',\n },\n },\n {\n title: '1',\n message: 'possible duplicate from constituent lists',\n permalink: {\n url: '#',\n },\n },\n ];\n\n public recentLinks = [\n {\n label: 'Recent 1',\n permalink: {\n url: '#',\n },\n lastAccessed: pastHours[0],\n },\n {\n label: 'Recent 2',\n permalink: {\n url: '#',\n },\n lastAccessed: pastHours[1],\n },\n {\n label: 'Recent 3',\n permalink: {\n url: '#',\n },\n lastAccessed: pastHours[2],\n },\n {\n label: 'Recent 4',\n permalink: {\n url: '#',\n },\n lastAccessed: pastHours[3],\n },\n {\n label: 'Recent 5',\n permalink: {\n url: '#',\n },\n lastAccessed: pastHours[4],\n },\n ];\n\n public relatedLinks = [\n {\n label: 'Link 1',\n permalink: {\n url: '#',\n },\n },\n {\n label: 'Link 2',\n permalink: {\n url: '#',\n },\n },\n {\n label: 'Link 3',\n permalink: {\n url: '#',\n },\n },\n ];\n\n public settingsLinks: SkyPageModalLinksInput = [\n {\n label: 'Number',\n modal: {\n component: SettingsModalComponent,\n config: {\n size: 'large',\n providers: [\n {\n provide: MODAL_TITLE,\n useValue: 'Number',\n },\n ],\n },\n },\n },\n {\n label: 'Color',\n modal: {\n component: SettingsModalComponent,\n config: {\n size: 'large',\n providers: [\n {\n provide: MODAL_TITLE,\n useValue: 'Color',\n },\n ],\n },\n },\n },\n ];\n\n public title = 'Active accounts';\n}\n","<sky-action-hub\n data-sky-id=\"action-hub\"\n [needsAttention]=\"needsAttention\"\n [recentLinks]=\"recentLinks\"\n [relatedLinks]=\"relatedLinks\"\n [settingsLinks]=\"settingsLinks\"\n [title]=\"title\"\n>\n <sky-action-hub-buttons>\n @for (button of buttons; track button) {\n <a\n class=\"sky-btn sky-btn-default sky-margin-inline-sm\"\n [attr.aria-label]=\"button.ariaLabel\"\n [href]=\"button.permalink.url\"\n >\n {{ button.label }}\n </a>\n }\n </sky-action-hub-buttons>\n\n <sky-action-hub-content>\n <h2 class=\"sky-font-heading-2\">Additional content</h2>\n <p>More content can go here as needed for the functional area.</p>\n </sky-action-hub-content>\n</sky-action-hub>\n","import { Component, inject } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n ValidationErrors,\n Validators,\n} from '@angular/forms';\nimport { SkyTextEditorModule } from '@skyux/text-editor';\n\nfunction validateText(\n control: AbstractControl<string>,\n): ValidationErrors | null {\n return !control.value?.includes('Blackbaud') ? { companyName: true } : null;\n}\n\n@Component({\n selector: 'app-text-editor-help-key-example',\n templateUrl: './example.component.html',\n imports: [FormsModule, ReactiveFormsModule, SkyTextEditorModule],\n})\nexport class TextEditorHelpKeyExampleComponent {\n protected formGroup: FormGroup;\n public myText: FormControl;\n\n #richText = `<font style=\"font-size: 18px\" face=\"Arial\" color=\"#a25353\"><b>Exclusively committed to your impact</b></font><p>Since day one, Blackbaud has been 100% focused on driving impact for social good organizations.</p><p>We equip change agents with <b>cloud software</b>, <i>services</i>, <u>expertise</u>, and <font color=\"#a25353\">data intelligence</font> designed with unmatched insight and supported with unparalleled commitment. Every day, our <b>customers</b> achieve unmatched impact as they advance their missions.</p>`;\n\n constructor() {\n this.myText = new FormControl(this.#richText, {\n nonNullable: true,\n validators: [Validators.required, validateText],\n });\n\n this.formGroup = inject(FormBuilder).group({\n myText: this.myText,\n });\n }\n}\n","<div class=\"sky-padding-even-xl\">\n <form [formGroup]=\"formGroup\">\n <sky-text-editor\n formControlName=\"myText\"\n helpKey=\"email-help\"\n hintText=\"Include details about how to opt out of future email.\"\n labelText=\"Message\"\n >\n @if (myText.errors?.['companyName']) {\n <sky-form-error\n errorName=\"companyName\"\n errorText=\"Message must include company name.\"\n />\n }\n </sky-text-editor>\n </form>\n</div>\n","import { Component } from '@angular/core';\nimport { SkyRichTextDisplayModule } from '@skyux/text-editor';\n\n@Component({\n selector: 'app-text-editor-rich-text-display-example',\n templateUrl: './example.component.html',\n imports: [SkyRichTextDisplayModule],\n})\nexport class TextEditorRichTextDisplayExampleComponent {\n protected richText = `<font style=\"font-size: 18px\" face=\"Arial\" color=\"#a25353\"><b>Exclusively committed to your impact</b></font><p>Since day one, Blackbaud has been 100% focused on driving impact for social good organizations.</p><p>We equip change agents with <b>cloud software</b>, <i>services</i>, <u>expertise</u>, and <font color=\"#a25353\">data intelligence</font> designed with unmatched insight and supported with unparalleled commitment. Every day, our <b>customers</b> achieve unmatched impact as they advance their missions.</p><ul><li><a href=\"#\">Build a better world</a></li><li><a href=\"#\">Explore our solutions</a></li></ul>`;\n}\n","<sky-rich-text-display [richText]=\"richText\" />\n","import { Component, inject } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n ValidationErrors,\n Validators,\n} from '@angular/forms';\nimport { SkyTextEditorModule } from '@skyux/text-editor';\n\nfunction validateText(\n control: AbstractControl<string>,\n): ValidationErrors | null {\n return !control.value?.includes('Blackbaud') ? { companyName: true } : null;\n}\n\n@Component({\n selector: 'app-text-editor-example',\n templateUrl: './example.component.html',\n imports: [FormsModule, ReactiveFormsModule, SkyTextEditorModule],\n})\nexport class TextEditorExampleComponent {\n protected formGroup: FormGroup;\n public myText: FormControl;\n\n #richText = `<font style=\"font-size: 18px\" face=\"Arial\" color=\"#a25353\"><b>Exclusively committed to your impact</b></font><p>Since day one, Blackbaud has been 100% focused on driving impact for social good organizations.</p><p>We equip change agents with <b>cloud software</b>, <i>services</i>, <u>expertise</u>, and <font color=\"#a25353\">data intelligence</font> designed with unmatched insight and supported with unparalleled commitment. Every day, our <b>customers</b> achieve unmatched impact as they advance their missions.</p>`;\n\n constructor() {\n this.myText = new FormControl(this.#richText, {\n nonNullable: true,\n validators: [Validators.required, validateText],\n });\n\n this.formGroup = inject(FormBuilder).group({\n myText: this.myText,\n });\n }\n}\n","<div class=\"sky-padding-even-xl\">\n <form [formGroup]=\"formGroup\">\n <sky-text-editor\n formControlName=\"myText\"\n helpPopoverTitle=\"Ensure deliverability\"\n helpPopoverContent=\"High quality, relevant email content and calls to action drive\n engagement and avoid being marked as junk mail. For details, see writing\n for engagement and deliverability.\"\n hintText=\"Include details about how to opt out of future email.\"\n labelText=\"Message\"\n >\n @if (myText.errors?.['companyName']) {\n <sky-form-error\n errorName=\"companyName\"\n errorText=\"Message must include company name.\"\n />\n }\n </sky-text-editor>\n </form>\n</div>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport {\n SkyAutonumericModule,\n SkyAutonumericOptions,\n} from '@skyux/autonumeric';\nimport { SkyInputBoxModule } from '@skyux/forms';\n\n@Component({\n selector: 'app-autonumeric-currency-example',\n templateUrl: './example.component.html',\n imports: [ReactiveFormsModule, SkyAutonumericModule, SkyInputBoxModule],\n})\nexport class AutonumericCurrencyExampleComponent {\n protected autonumericOptions: SkyAutonumericOptions | undefined;\n\n protected formGroup: FormGroup;\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n donationAmount: new FormControl(1234.5678, [Validators.required]),\n });\n\n this.autonumericOptions = {\n currencySymbol: ' €',\n currencySymbolPlacement: 's',\n decimalPlaces: 2,\n decimalCharacter: ',',\n digitGroupSeparator: '',\n };\n }\n}\n","<form [formGroup]=\"formGroup\">\n <sky-input-box labelText=\"Donation amount\">\n <input\n formControlName=\"donationAmount\"\n type=\"text\"\n [skyAutonumeric]=\"autonumericOptions\"\n />\n </sky-input-box>\n</form>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport {\n SkyAutonumericModule,\n SkyAutonumericOptions,\n} from '@skyux/autonumeric';\nimport { SkyInputBoxModule } from '@skyux/forms';\n\n@Component({\n selector: 'app-autonumeric-international-formatting-example',\n templateUrl: './example.component.html',\n imports: [ReactiveFormsModule, SkyAutonumericModule, SkyInputBoxModule],\n})\nexport class AutonumericInternationalFormattingExampleComponent {\n protected autonumericOptions: SkyAutonumericOptions | undefined;\n\n protected formGroup: FormGroup;\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n donationAmount: new FormControl(1234.5678, [Validators.required]),\n });\n\n this.autonumericOptions = {\n decimalCharacter: ',',\n decimalPlaces: 4,\n digitGroupSeparator: '',\n };\n }\n}\n","<form [formGroup]=\"formGroup\">\n <sky-input-box labelText=\"Autonumeric value\">\n <input\n formControlName=\"donationAmount\"\n type=\"text\"\n [skyAutonumeric]=\"autonumericOptions\"\n />\n </sky-input-box>\n</form>\n","import { Injectable } from '@angular/core';\nimport {\n SkyAutonumericOptions,\n SkyAutonumericOptionsProvider,\n} from '@skyux/autonumeric';\n\n@Injectable()\nexport class DemoAutonumericOptionsProvider extends SkyAutonumericOptionsProvider {\n constructor() {\n super();\n }\n\n public override getConfig(): SkyAutonumericOptions {\n return {\n currencySymbol: ' €',\n currencySymbolPlacement: 's',\n decimalPlaces: 2,\n decimalCharacter: ',',\n digitGroupSeparator: '',\n };\n }\n}\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport {\n SkyAutonumericModule,\n SkyAutonumericOptions,\n SkyAutonumericOptionsProvider,\n} from '@skyux/autonumeric';\nimport { SkyInputBoxModule } from '@skyux/forms';\n\nimport { DemoAutonumericOptionsProvider } from './options-provider';\n\n@Component({\n selector: 'app-autonumeric-options-provider-example',\n templateUrl: './example.component.html',\n providers: [\n {\n provide: SkyAutonumericOptionsProvider,\n useClass: DemoAutonumericOptionsProvider,\n },\n ],\n imports: [ReactiveFormsModule, SkyAutonumericModule, SkyInputBoxModule],\n})\nexport class AutonumericOptionsProviderExampleComponent {\n protected donationOptions: SkyAutonumericOptions = {};\n\n protected formGroup: FormGroup;\n\n protected pledgeOptions: SkyAutonumericOptions = {\n decimalPlaces: 0,\n };\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n donationAmount: new FormControl(1234.5678, [Validators.required]),\n pledgeAmount: new FormControl(2345.6789, [Validators.required]),\n });\n }\n}\n","<form [formGroup]=\"formGroup\">\n <sky-input-box labelText=\"Donation amount\" stacked=\"true\">\n <input\n formControlName=\"donationAmount\"\n type=\"text\"\n [skyAutonumeric]=\"donationOptions\"\n />\n </sky-input-box>\n <sky-input-box labelText=\"Pledge amount\">\n <input\n formControlName=\"pledgeAmount\"\n type=\"text\"\n [skyAutonumeric]=\"pledgeOptions\"\n />\n </sky-input-box>\n</form>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport {\n SkyAutonumericModule,\n SkyAutonumericOptions,\n} from '@skyux/autonumeric';\nimport { SkyInputBoxModule } from '@skyux/forms';\n\n@Component({\n selector: 'app-autonumeric-preset-example',\n templateUrl: './example.component.html',\n imports: [ReactiveFormsModule, SkyAutonumericModule, SkyInputBoxModule],\n})\nexport class AutonumericPresetExampleComponent {\n protected autonumericOptions: SkyAutonumericOptions = 'Chinese';\n\n protected formGroup: FormGroup;\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n donationAmount: new FormControl(1234.5678, [Validators.required]),\n });\n }\n}\n","<form [formGroup]=\"formGroup\">\n <sky-input-box labelText=\"Donation amount\">\n <input\n formControlName=\"donationAmount\"\n type=\"text\"\n [skyAutonumeric]=\"autonumericOptions\"\n />\n </sky-input-box>\n</form>\n","import { Component } from '@angular/core';\nimport { SkySummaryActionBarModule } from '@skyux/action-bars';\nimport { SkyKeyInfoModule } from '@skyux/indicators';\n\n@Component({\n selector: 'app-action-bars-summary-action-bar-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyKeyInfoModule, SkySummaryActionBarModule],\n})\nexport class ActionBarsSummaryActionBarBasicExampleComponent {\n protected onPrimaryActionClick(): void {\n alert('Primary action button clicked.');\n }\n\n protected onSecondaryActionClick(): void {\n alert('Secondary action button clicked.');\n }\n\n protected onSecondaryAction2Click(): void {\n alert('Secondary action 2 button clicked.');\n }\n}\n","<sky-summary-action-bar>\n <sky-summary-action-bar-actions>\n <sky-summary-action-bar-primary-action\n (actionClick)=\"onPrimaryActionClick()\"\n >\n Primary action\n </sky-summary-action-bar-primary-action>\n <sky-summary-action-bar-secondary-actions>\n <sky-summary-action-bar-secondary-action\n (actionClick)=\"onSecondaryActionClick()\"\n >\n Secondary action\n </sky-summary-action-bar-secondary-action>\n <sky-summary-action-bar-secondary-action\n (actionClick)=\"onSecondaryAction2Click()\"\n >\n Secondary action 2\n </sky-summary-action-bar-secondary-action>\n </sky-summary-action-bar-secondary-actions>\n </sky-summary-action-bar-actions>\n <sky-summary-action-bar-summary>\n <sky-key-info>\n <sky-key-info-value>$250</sky-key-info-value>\n <sky-key-info-label>Given this month</sky-key-info-label>\n </sky-key-info>\n <sky-key-info>\n <sky-key-info-value>$1,000</sky-key-info-value>\n <sky-key-info-label>Given this year</sky-key-info-label>\n </sky-key-info>\n <sky-key-info>\n <sky-key-info-value>$1,300</sky-key-info-value>\n <sky-key-info-label>Given all time</sky-key-info-label>\n </sky-key-info>\n </sky-summary-action-bar-summary>\n</sky-summary-action-bar>\n","import { Component, inject } from '@angular/core';\nimport { SkySummaryActionBarModule } from '@skyux/action-bars';\nimport { SkyKeyInfoModule } from '@skyux/indicators';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\n\n@Component({\n selector: 'app-modal',\n templateUrl: './modal.component.html',\n imports: [SkyKeyInfoModule, SkyModalModule, SkySummaryActionBarModule],\n})\nexport class ModalComponent {\n readonly #modalInstance = inject(SkyModalInstance);\n\n protected onSecondaryActionClick(): void {\n alert('Secondary action button clicked.');\n }\n\n protected onSecondaryAction2Click(): void {\n alert('Secondary action 2 button clicked.');\n }\n\n protected cancel(): void {\n this.#modalInstance.cancel();\n }\n\n protected save(): void {\n this.#modalInstance.save();\n }\n}\n","<sky-modal headingText=\"Modal with summary action bar\">\n <sky-modal-content> Hello world! </sky-modal-content>\n <sky-modal-footer>\n <sky-summary-action-bar>\n <sky-summary-action-bar-actions>\n <sky-summary-action-bar-primary-action (actionClick)=\"save()\">\n Primary action\n </sky-summary-action-bar-primary-action>\n <sky-summary-action-bar-secondary-actions>\n <sky-summary-action-bar-secondary-action\n (actionClick)=\"onSecondaryActionClick()\"\n >\n Secondary action\n </sky-summary-action-bar-secondary-action>\n <sky-summary-action-bar-secondary-action\n (actionClick)=\"onSecondaryAction2Click()\"\n >\n Secondary action 2\n </sky-summary-action-bar-secondary-action>\n </sky-summary-action-bar-secondary-actions>\n <sky-summary-action-bar-cancel (actionClick)=\"cancel()\">\n Cancel\n </sky-summary-action-bar-cancel>\n </sky-summary-action-bar-actions>\n <sky-summary-action-bar-summary>\n <sky-key-info>\n <sky-key-info-value>$250</sky-key-info-value>\n <sky-key-info-label>Given this month</sky-key-info-label>\n </sky-key-info>\n <sky-key-info>\n <sky-key-info-value>$1,000</sky-key-info-value>\n <sky-key-info-label>Given this year</sky-key-info-label>\n </sky-key-info>\n <sky-key-info>\n <sky-key-info-value>$1,300</sky-key-info-value>\n <sky-key-info-label>Given all time</sky-key-info-label>\n </sky-key-info>\n </sky-summary-action-bar-summary>\n </sky-summary-action-bar>\n </sky-modal-footer>\n</sky-modal>\n","import { Component, inject } from '@angular/core';\nimport { SkyModalService } from '@skyux/modals';\n\nimport { ModalComponent } from './modal.component';\n\n@Component({\n standalone: true,\n selector: 'app-action-bars-summary-action-bar-modal-example',\n templateUrl: './example.component.html',\n})\nexport class ActionBarsSummaryActionBarModalExampleComponent {\n readonly #modalSvc = inject(SkyModalService);\n\n protected openModal(): void {\n this.#modalSvc.open(ModalComponent, {\n size: 'large',\n });\n }\n}\n","<button class=\"sky-btn sky-btn-primary\" type=\"button\" (click)=\"openModal()\">\n Open modal\n</button>\n","import { Component } from '@angular/core';\nimport { SkySummaryActionBarModule } from '@skyux/action-bars';\nimport { SkyKeyInfoModule } from '@skyux/indicators';\nimport { SkyTabsModule } from '@skyux/tabs';\n\n@Component({\n selector: 'app-action-bars-summary-action-bar-tab-example',\n templateUrl: './example.component.html',\n imports: [SkyKeyInfoModule, SkySummaryActionBarModule, SkyTabsModule],\n})\nexport class ActionBarsSummaryActionBarTabExampleComponent {\n protected onPrimaryActionClick(): void {\n alert('Primary action button clicked.');\n }\n\n protected onSecondaryActionClick(): void {\n alert('Secondary action button clicked.');\n }\n\n protected onSecondaryAction2Click(): void {\n alert('Secondary action 2 button clicked.');\n }\n}\n","<sky-tabset [active]=\"0\">\n <sky-tab tabHeading=\"Tab 1\"> Tab without summary action bar. </sky-tab>\n <sky-tab tabHeading=\"Tab 2\">\n Tab with summary action bar.\n <sky-summary-action-bar>\n <sky-summary-action-bar-actions>\n <sky-summary-action-bar-primary-action\n (actionClick)=\"onPrimaryActionClick()\"\n >\n Primary action\n </sky-summary-action-bar-primary-action>\n <sky-summary-action-bar-secondary-actions>\n <sky-summary-action-bar-secondary-action\n (actionClick)=\"onSecondaryActionClick()\"\n >\n Secondary action\n </sky-summary-action-bar-secondary-action>\n <sky-summary-action-bar-secondary-action\n (actionClick)=\"onSecondaryAction2Click()\"\n >\n Secondary action 2\n </sky-summary-action-bar-secondary-action>\n </sky-summary-action-bar-secondary-actions>\n </sky-summary-action-bar-actions>\n <sky-summary-action-bar-summary>\n <sky-key-info>\n <sky-key-info-value>$250</sky-key-info-value>\n <sky-key-info-label>Given this month</sky-key-info-label>\n </sky-key-info>\n <sky-key-info>\n <sky-key-info-value>$1,000</sky-key-info-value>\n <sky-key-info-label>Given this year</sky-key-info-label>\n </sky-key-info>\n <sky-key-info>\n <sky-key-info-value>$1,300</sky-key-info-value>\n <sky-key-info-label>Given all time</sky-key-info-label>\n </sky-key-info>\n </sky-summary-action-bar-summary>\n </sky-summary-action-bar>\n </sky-tab>\n</sky-tabset>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { TreeModule } from '@blackbaud/angular-tree-component';\nimport { SkyAngularTreeModule } from '@skyux/angular-tree-component';\nimport { SkyHelpInlineModule } from '@skyux/help-inline';\n\n@Component({\n selector: 'app-angular-tree-component-angular-tree-basic-example',\n templateUrl: './example.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyAngularTreeModule, SkyHelpInlineModule, TreeModule],\n})\nexport class AngularTreeComponentAngularTreeBasicExampleComponent {\n protected nodes = [\n {\n name: 'Animals',\n isExpanded: true,\n helpPopoverContent: 'Example help content for animals.',\n children: [\n {\n name: 'Cats',\n isExpanded: true,\n helpPopoverContent: 'Example help content for cats.',\n helpPopoverTitle: 'What is a cat?',\n children: [\n { name: 'Burmese' },\n { name: 'Persian' },\n { name: 'Tabby' },\n ],\n },\n {\n name: 'Dogs',\n isExpanded: true,\n children: [\n {\n name: 'Beagle',\n helpPopoverContent: 'Example help content for beagles.',\n },\n { name: 'German shepherd' },\n { name: 'Labrador retriever' },\n ],\n },\n ],\n },\n ];\n}\n","<sky-angular-tree-wrapper>\n <tree-root #tree [nodes]=\"nodes\">\n <ng-template\n #treeNodeFullTemplate\n let-index=\"index\"\n let-node\n let-templates=\"templates\"\n >\n <sky-angular-tree-node\n [helpPopoverContent]=\"node.data.helpPopoverContent\"\n [helpPopoverTitle]=\"node.data.helpPopoverTitle\"\n [index]=\"index\"\n [node]=\"node\"\n [templates]=\"templates\"\n />\n </ng-template>\n </tree-root>\n</sky-angular-tree-wrapper>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { TreeModule } from '@blackbaud/angular-tree-component';\nimport { SkyAngularTreeModule } from '@skyux/angular-tree-component';\nimport { SkyHelpInlineModule } from '@skyux/help-inline';\n\n@Component({\n selector: 'app-angular-tree-component-angular-tree-help-key-example',\n templateUrl: './example.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyAngularTreeModule, SkyHelpInlineModule, TreeModule],\n})\nexport class AngularTreeComponentAngularTreeHelpKeyExampleComponent {\n protected nodes = [\n {\n name: 'Animals',\n isExpanded: true,\n helpPopoverContent: 'Example help content for animals.',\n children: [\n {\n name: 'Cats',\n isExpanded: true,\n helpPopoverContent: 'Example help content for cats.',\n helpPopoverTitle: 'What is a cat?',\n children: [\n { name: 'Burmese', helpKey: 'cat-burmese' },\n { name: 'Persian', helpKey: 'cat-persian' },\n { name: 'Tabby', helpKey: 'cat-tabby' },\n ],\n },\n {\n name: 'Dogs',\n isExpanded: true,\n children: [\n {\n name: 'Beagle',\n helpPopoverContent: 'Example help content for beagles.',\n },\n { name: 'German shepherd', helpKey: 'dog-shepherd' },\n { name: 'Labrador retriever', helpKey: 'dog-lab' },\n ],\n },\n ],\n },\n ];\n}\n","<sky-angular-tree-wrapper>\n <tree-root #tree [nodes]=\"nodes\">\n <ng-template\n #treeNodeFullTemplate\n let-index=\"index\"\n let-node\n let-templates=\"templates\"\n >\n <sky-angular-tree-node\n [attr.data-sky-id]=\"'node-' + node.data.name\"\n [helpKey]=\"node.data.helpKey\"\n [helpPopoverContent]=\"node.data.helpPopoverContent\"\n [helpPopoverTitle]=\"node.data.helpPopoverTitle\"\n [index]=\"index\"\n [node]=\"node\"\n [templates]=\"templates\"\n />\n </ng-template>\n </tree-root>\n</sky-angular-tree-wrapper>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\nimport { ICellRendererParams } from 'ag-grid-community';\n\nimport { AgGridDemoRow } from './data';\n\n@Component({\n selector: 'app-context-menu',\n templateUrl: './context-menu.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyDropdownModule],\n})\nexport class ContextMenuComponent implements ICellRendererAngularComp {\n protected contextMenuAriaLabel = '';\n protected deleteAriaLabel = '';\n protected markInactiveAriaLabel = '';\n protected moreInfoAriaLabel = '';\n\n #name: string | undefined;\n\n public agInit(params: ICellRendererParams<AgGridDemoRow>): void {\n this.#name = params.data?.name;\n this.contextMenuAriaLabel = `Context menu for ${this.#name}`;\n this.deleteAriaLabel = `Delete ${this.#name}`;\n this.markInactiveAriaLabel = `Mark ${this.#name} inactive`;\n this.moreInfoAriaLabel = `More info for ${this.#name}`;\n }\n\n public refresh(): boolean {\n return false;\n }\n\n protected actionClicked(action: string): void {\n console.error(`${action} clicked for ${this.#name}`);\n }\n}\n","<sky-dropdown buttonType=\"context-menu\" [label]=\"contextMenuAriaLabel\">\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"deleteAriaLabel\"\n (click)=\"actionClicked('Delete')\"\n >\n Delete\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"markInactiveAriaLabel\"\n (click)=\"actionClicked('Mark inactive')\"\n >\n Mark inactive\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"moreInfoAriaLabel\"\n (click)=\"actionClicked('More info')\"\n >\n More info\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n</sky-dropdown>\n","export interface AutocompleteOption {\n id: string;\n name: string;\n}\n\nexport const DEPARTMENTS = [\n {\n id: '1',\n name: 'Marketing',\n },\n {\n id: '2',\n name: 'Sales',\n },\n {\n id: '3',\n name: 'Engineering',\n },\n {\n id: '4',\n name: 'Customer Support',\n },\n];\n\nexport const JOB_TITLES: Record<string, AutocompleteOption[]> = {\n Marketing: [\n {\n id: '1',\n name: 'Social Media Coordinator',\n },\n {\n id: '2',\n name: 'Blog Manager',\n },\n {\n id: '3',\n name: 'Events Manager',\n },\n ],\n Sales: [\n {\n id: '4',\n name: 'Business Development Representative',\n },\n {\n id: '5',\n name: 'Account Executive',\n },\n ],\n Engineering: [\n {\n id: '6',\n name: 'Software Engineer',\n },\n {\n id: '7',\n name: 'Senior Software Engineer',\n },\n {\n id: '8',\n name: 'Principal Software Engineer',\n },\n {\n id: '9',\n name: 'UX Designer',\n },\n {\n id: '10',\n name: 'Product Manager',\n },\n ],\n 'Customer Support': [\n {\n id: '11',\n name: 'Customer Support Representative',\n },\n {\n id: '12',\n name: 'Account Manager',\n },\n {\n id: '13',\n name: 'Customer Support Specialist',\n },\n ],\n};\n\nexport interface AgGridDemoRow {\n selected?: boolean;\n name: string;\n age: number;\n startDate: Date;\n endDate?: Date;\n department: AutocompleteOption;\n jobTitle?: AutocompleteOption;\n}\n\nexport const AG_GRID_DEMO_DATA: AgGridDemoRow[] = [\n {\n selected: true,\n name: 'Billy Bob',\n age: 55,\n startDate: new Date('12/1/1994'),\n department: DEPARTMENTS[3],\n jobTitle: JOB_TITLES['Customer Support'][1],\n },\n {\n selected: false,\n name: 'Jane Deere',\n age: 33,\n startDate: new Date('7/15/2009'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][2],\n },\n {\n selected: false,\n name: 'John Doe',\n age: 38,\n startDate: new Date('9/1/2017'),\n endDate: new Date('9/30/2017'),\n department: DEPARTMENTS[1],\n },\n {\n selected: false,\n name: 'David Smith',\n age: 51,\n startDate: new Date('1/1/2012'),\n endDate: new Date('6/15/2018'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][4],\n },\n {\n selected: true,\n name: 'Emily Johnson',\n age: 41,\n startDate: new Date('1/15/2014'),\n department: DEPARTMENTS[0],\n jobTitle: JOB_TITLES['Marketing'][2],\n },\n {\n selected: false,\n name: 'Nicole Davidson',\n age: 22,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][0],\n },\n {\n selected: false,\n name: 'Carl Roberts',\n age: 23,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][3],\n },\n];\n","import { AgGridDemoRow } from './data';\n\nexport class EditModalContext {\n public gridData: AgGridDemoRow[] = [];\n}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n standalone: true,\n selector: 'app-mark-inactive',\n templateUrl: './mark-inactive.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MarkInactiveComponent {\n @Input()\n public set name(value: string | undefined) {\n this.#_name = value;\n if (value) {\n this.markInactiveAriaLabel = `Mark ${value} inactive`;\n }\n }\n\n public get name(): string | undefined {\n return this.#_name;\n }\n\n protected markInactiveAriaLabel = '';\n\n #_name: string | undefined;\n\n protected markInactive(): void {\n console.error(`Mark inactive action clicked for ${this.name}`);\n }\n}\n","<button\n type=\"button\"\n class=\"sky-btn sky-btn-link-inline\"\n [attr.aria-label]=\"markInactiveAriaLabel\"\n (click)=\"markInactive()\"\n>\n Mark inactive\n</button>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n OnInit,\n TemplateRef,\n ViewChild,\n inject,\n} from '@angular/core';\nimport {\n SkyAgGridAutocompleteProperties,\n SkyAgGridDatepickerProperties,\n SkyAgGridModule,\n SkyAgGridService,\n SkyCellType,\n} from '@skyux/ag-grid';\nimport { SkyAutocompleteSelectionChange } from '@skyux/lookup';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport {\n ColDef,\n GridApi,\n GridOptions,\n GridReadyEvent,\n ICellEditorParams,\n IRowNode,\n NewValueParams,\n} from 'ag-grid-community';\n\nimport { AgGridDemoRow, DEPARTMENTS, JOB_TITLES } from './data';\nimport { EditModalContext } from './edit-modal-context';\nimport { MarkInactiveComponent } from './mark-inactive.component';\n\n@Component({\n selector: 'app-edit-modal',\n templateUrl: './edit-modal.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n AgGridModule,\n SkyAgGridModule,\n SkyModalModule,\n MarkInactiveComponent,\n ],\n})\nexport class EditModalComponent implements OnInit {\n @ViewChild('markInactiveAction', { static: true })\n protected markInactiveAction: TemplateRef<unknown> | undefined;\n\n protected gridData: AgGridDemoRow[];\n protected gridOptions: GridOptions | undefined;\n\n #gridApi: GridApi | undefined;\n\n protected readonly instance = inject(SkyModalInstance);\n readonly #agGridSvc = inject(SkyAgGridService);\n readonly #changeDetectorRef = inject(ChangeDetectorRef);\n readonly #context = inject(EditModalContext);\n\n constructor() {\n this.gridData = this.#context.gridData;\n }\n\n public ngOnInit(): void {\n const columnDefs: ColDef[] = [\n {\n colId: 'markInactiveAction',\n headerName: 'Mark inactive',\n type: SkyCellType.Template,\n editable: true,\n cellRendererParams: {\n template: this.markInactiveAction,\n },\n },\n {\n field: 'name',\n headerName: 'Name',\n type: SkyCellType.Text,\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: string): boolean => String(value).length <= 10,\n validatorMessage: `Value exceeds maximum length`,\n },\n },\n cellEditorParams: {\n skyComponentProperties: {\n maxlength: 10,\n },\n },\n editable: true,\n },\n {\n field: 'age',\n headerName: 'Age',\n type: SkyCellType.Number,\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: number): boolean => value >= 18,\n validatorMessage: `Age must be 18+`,\n },\n },\n maxWidth: 60,\n cellEditorParams: {\n skyComponentProperties: {\n min: 18,\n },\n },\n editable: true,\n },\n {\n field: 'startDate',\n headerName: 'Start date',\n type: SkyCellType.Date,\n sort: 'asc',\n },\n {\n field: 'endDate',\n headerName: 'End date',\n type: SkyCellType.Date,\n editable: true,\n cellEditorParams: (\n params: ICellEditorParams<AgGridDemoRow>,\n ): { skyComponentProperties: SkyAgGridDatepickerProperties } => {\n return { skyComponentProperties: { minDate: params.data.startDate } };\n },\n },\n {\n field: 'department',\n headerName: 'Department',\n type: SkyCellType.Autocomplete,\n editable: true,\n cellEditorParams: (\n params: ICellEditorParams<AgGridDemoRow>,\n ): { skyComponentProperties: SkyAgGridAutocompleteProperties } => {\n return {\n skyComponentProperties: {\n data: DEPARTMENTS,\n selectionChange: (\n change: SkyAutocompleteSelectionChange,\n ): void => {\n this.#departmentSelectionChange(change, params.node);\n },\n },\n };\n },\n onCellValueChanged: (event: NewValueParams): void => {\n if (event.newValue !== event.oldValue) {\n this.#clearJobTitle(event.node);\n }\n },\n },\n {\n field: 'jobTitle',\n headerName: 'Title',\n type: SkyCellType.Autocomplete,\n editable: true,\n cellEditorParams: (\n params: ICellEditorParams<AgGridDemoRow>,\n ): { skyComponentProperties: SkyAgGridAutocompleteProperties } => {\n const selectedDepartment = params.data?.department?.name;\n\n const editParams: {\n skyComponentProperties: SkyAgGridAutocompleteProperties;\n } = { skyComponentProperties: { data: [] } };\n\n if (selectedDepartment) {\n editParams.skyComponentProperties.data =\n JOB_TITLES[selectedDepartment];\n }\n\n return editParams;\n },\n },\n {\n colId: 'validationCurrency',\n field: 'validationCurrency',\n headerName: 'Validation currency',\n type: [SkyCellType.CurrencyValidator],\n editable: true,\n },\n {\n colId: 'validationDate',\n field: 'validationDate',\n headerName: 'Validation date',\n type: [SkyCellType.Date, SkyCellType.Validator],\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: Date): boolean =>\n !!value && value > new Date(1985, 9, 26),\n validatorMessage: 'Please enter a future date',\n },\n },\n editable: true,\n },\n ];\n\n this.gridOptions = {\n columnDefs: columnDefs,\n onGridReady: (gridReadyEvent): void => {\n this.onGridReady(gridReadyEvent);\n },\n };\n\n this.gridOptions = this.#agGridSvc.getEditableGridOptions({\n gridOptions: this.gridOptions,\n });\n\n this.#changeDetectorRef.markForCheck();\n }\n\n public onGridReady(gridReadyEvent: GridReadyEvent): void {\n this.#gridApi = gridReadyEvent.api;\n\n this.#changeDetectorRef.markForCheck();\n }\n\n #departmentSelectionChange(\n change: SkyAutocompleteSelectionChange,\n node: IRowNode<AgGridDemoRow>,\n ): void {\n if (change.selectedItem && change.selectedItem !== node.data?.department) {\n this.#clearJobTitle(node);\n }\n }\n\n #clearJobTitle(node: IRowNode<AgGridDemoRow> | null): void {\n if (node?.data) {\n node.data.jobTitle = undefined;\n this.#changeDetectorRef.markForCheck();\n\n if (this.#gridApi) {\n this.#gridApi.refreshCells({ rowNodes: [node] });\n }\n }\n }\n}\n","<sky-modal headingText=\"Edit employee information\">\n <sky-modal-content>\n <sky-ag-grid-wrapper>\n <ag-grid-angular\n class=\"sky-ag-grid-editable\"\n [gridOptions]=\"gridOptions\"\n [rowData]=\"gridData\"\n />\n </sky-ag-grid-wrapper>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-primary\"\n type=\"button\"\n (click)=\"instance.save(gridData)\"\n >\n Save\n </button>\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n (click)=\"instance.cancel()\"\n >\n Cancel\n </button>\n </sky-modal-footer>\n</sky-modal>\n<ng-template #markInactiveAction let-value=\"value\" let-row=\"row\">\n <app-mark-inactive [name]=\"row?.name\" />\n</ng-template>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n inject,\n} from '@angular/core';\nimport { SkyAgGridModule, SkyAgGridService, SkyCellType } from '@skyux/ag-grid';\nimport { SkyToolbarModule } from '@skyux/layout';\nimport { SkySearchModule } from '@skyux/lookup';\nimport { SkyModalConfigurationInterface, SkyModalService } from '@skyux/modals';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport {\n ColDef,\n GridApi,\n GridOptions,\n GridReadyEvent,\n ValueFormatterParams,\n} from 'ag-grid-community';\nimport { of } from 'rxjs';\n\nimport { ContextMenuComponent } from './context-menu.component';\nimport { AG_GRID_DEMO_DATA, AgGridDemoRow } from './data';\nimport { EditModalContext } from './edit-modal-context';\nimport { EditModalComponent } from './edit-modal.component';\n\n@Component({\n selector: 'app-ag-grid-data-entry-grid-basic-example',\n templateUrl: './example.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AgGridModule, SkyAgGridModule, SkySearchModule, SkyToolbarModule],\n})\nexport class AgGridDataEntryGridBasicExampleComponent {\n protected gridData = AG_GRID_DEMO_DATA;\n protected gridOptions: GridOptions;\n protected noRowsTemplate = `<div class=\"sky-font-deemphasized\">No results found.</div>`;\n protected searchText = '';\n\n #columnDefs: ColDef[] = [\n {\n field: 'selected',\n type: SkyCellType.RowSelector,\n cellRendererParams: {\n // Could be a SkyAppResourcesService.getString call that returns an observable.\n label: (data: AgGridDemoRow) => of(`Select ${data.name}`),\n },\n },\n {\n colId: 'context',\n maxWidth: 50,\n sortable: false,\n cellRenderer: ContextMenuComponent,\n headerName: 'Context menu',\n headerComponentParams: {\n headerHidden: true,\n },\n },\n {\n field: 'name',\n headerName: 'Name',\n type: SkyCellType.Text,\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: string): boolean => String(value).length <= 10,\n validatorMessage: `Value exceeds maximum length`,\n },\n },\n },\n {\n field: 'age',\n headerName: 'Age',\n type: SkyCellType.Number,\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: number): boolean => value >= 18,\n validatorMessage: `Age must be 18+`,\n },\n },\n maxWidth: 60,\n },\n {\n field: 'startDate',\n headerName: 'Start date',\n type: SkyCellType.Date,\n sort: 'asc',\n },\n {\n field: 'endDate',\n headerName: 'End date',\n type: SkyCellType.Date,\n valueFormatter: (params: ValueFormatterParams<AgGridDemoRow, Date>) =>\n this.#endDateFormatter(params),\n },\n {\n field: 'department',\n headerName: 'Department',\n type: SkyCellType.Autocomplete,\n },\n {\n field: 'jobTitle',\n headerName: 'Title',\n type: SkyCellType.Autocomplete,\n },\n {\n colId: 'validationCurrency',\n field: 'validationCurrency',\n headerName: 'Validation currency',\n type: [SkyCellType.CurrencyValidator],\n },\n {\n colId: 'validationDate',\n field: 'validationDate',\n headerName: 'Validation date',\n type: [SkyCellType.Date, SkyCellType.Validator],\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: Date): boolean =>\n !!value && value > new Date(1985, 9, 26),\n validatorMessage: 'Enter a future date',\n },\n },\n },\n ];\n\n #gridApi: GridApi | undefined;\n\n readonly #agGridSvc = inject(SkyAgGridService);\n readonly #changeDetectorRef = inject(ChangeDetectorRef);\n readonly #modalSvc = inject(SkyModalService);\n\n constructor() {\n const gridOptions: GridOptions = {\n columnDefs: this.#columnDefs,\n onGridReady: (gridReadyEvent): void => {\n this.onGridReady(gridReadyEvent);\n },\n };\n\n this.gridOptions = this.#agGridSvc.getEditableGridOptions({\n gridOptions,\n });\n\n this.#changeDetectorRef.markForCheck();\n }\n\n public onGridReady(gridReadyEvent: GridReadyEvent): void {\n this.#gridApi = gridReadyEvent.api;\n this.#changeDetectorRef.markForCheck();\n }\n\n protected openModal(): void {\n const context = new EditModalContext();\n\n context.gridData = this.gridData;\n\n const options: SkyModalConfigurationInterface = {\n ariaDescribedBy: 'docs-edit-grid-modal-content',\n providers: [\n {\n provide: EditModalContext,\n useValue: context,\n },\n ],\n size: 'large',\n };\n\n const modalInstance = this.#modalSvc.open(EditModalComponent, options);\n\n modalInstance.closed.subscribe((result) => {\n if (result.reason === 'cancel' || result.reason === 'close') {\n alert('Edits canceled!');\n } else {\n this.gridData = result.data as AgGridDemoRow[];\n\n if (this.#gridApi) {\n this.#gridApi.refreshCells();\n }\n\n alert('Saving data!');\n }\n });\n }\n\n protected searchApplied(searchText: string | void): void {\n this.searchText = searchText ?? '';\n\n if (this.#gridApi) {\n this.#gridApi.updateGridOptions({ quickFilterText: this.searchText });\n\n const displayedRowCount = this.#gridApi.getDisplayedRowCount();\n\n if (displayedRowCount > 0) {\n this.#gridApi.hideOverlay();\n } else {\n this.#gridApi.showNoRowsOverlay();\n }\n }\n }\n\n #endDateFormatter(params: ValueFormatterParams<AgGridDemoRow, Date>): string {\n return params.value\n ? params.value.toLocaleDateString('en-us', {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n })\n : 'N/A';\n }\n}\n","<sky-toolbar>\n <sky-toolbar-item>\n <button class=\"sky-btn sky-btn-primary\" type=\"button\" (click)=\"openModal()\">\n Edit\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <sky-search\n [debounceTime]=\"250\"\n [searchText]=\"searchText\"\n (searchApply)=\"searchApplied($event)\"\n (searchChange)=\"searchApplied($event)\"\n (searchClear)=\"searchApplied($event)\"\n />\n </sky-toolbar-item>\n</sky-toolbar>\n<sky-ag-grid-wrapper>\n <ag-grid-angular\n [gridOptions]=\"gridOptions\"\n [overlayNoRowsTemplate]=\"noRowsTemplate\"\n [rowData]=\"gridData\"\n />\n</sky-ag-grid-wrapper>\n","export interface AutocompleteOption {\n id: string;\n name: string;\n}\n\nexport const DEPARTMENTS = [\n {\n id: '1',\n name: 'Marketing',\n },\n {\n id: '2',\n name: 'Sales',\n },\n {\n id: '3',\n name: 'Engineering',\n },\n {\n id: '4',\n name: 'Customer Support',\n },\n];\n\nexport const JOB_TITLES: Record<string, AutocompleteOption[]> = {\n Marketing: [\n {\n id: '1',\n name: 'Social Media Coordinator',\n },\n {\n id: '2',\n name: 'Blog Manager',\n },\n {\n id: '3',\n name: 'Events Manager',\n },\n ],\n Sales: [\n {\n id: '4',\n name: 'Business Development Representative',\n },\n {\n id: '5',\n name: 'Account Executive',\n },\n ],\n Engineering: [\n {\n id: '6',\n name: 'Software Engineer',\n },\n {\n id: '7',\n name: 'Senior Software Engineer',\n },\n {\n id: '8',\n name: 'Principal Software Engineer',\n },\n {\n id: '9',\n name: 'UX Designer',\n },\n {\n id: '10',\n name: 'Product Manager',\n },\n ],\n 'Customer Support': [\n {\n id: '11',\n name: 'Customer Support Representative',\n },\n {\n id: '12',\n name: 'Account Manager',\n },\n {\n id: '13',\n name: 'Customer Support Specialist',\n },\n ],\n};\n\nexport interface AgGridDemoRow {\n selected?: boolean;\n name: string;\n age: number;\n startDate: Date;\n endDate?: Date;\n department: AutocompleteOption;\n jobTitle?: AutocompleteOption;\n}\n\nexport const AG_GRID_DEMO_DATA: AgGridDemoRow[] = [\n {\n selected: true,\n name: 'Billy Bob',\n age: 55,\n startDate: new Date('12/1/1994'),\n department: DEPARTMENTS[3],\n jobTitle: JOB_TITLES['Customer Support'][1],\n },\n {\n selected: false,\n name: 'Jane Deere',\n age: 33,\n startDate: new Date('7/15/2009'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][2],\n },\n {\n selected: false,\n name: 'John Doe',\n age: 38,\n startDate: new Date('9/1/2017'),\n endDate: new Date('9/30/2017'),\n department: DEPARTMENTS[1],\n jobTitle: JOB_TITLES['Sales'][1],\n },\n {\n selected: false,\n name: 'David Smith',\n age: 51,\n startDate: new Date('1/1/2012'),\n endDate: new Date('6/15/2018'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][4],\n },\n {\n selected: true,\n name: 'Emily Johnson',\n age: 41,\n startDate: new Date('1/15/2014'),\n department: DEPARTMENTS[0],\n jobTitle: JOB_TITLES['Marketing'][2],\n },\n {\n selected: false,\n name: 'Nicole Davidson',\n age: 22,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][0],\n },\n {\n selected: false,\n name: 'Carl Roberts',\n age: 23,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][3],\n },\n];\n","import { AgGridDemoRow } from './data';\n\nexport class EditModalContext {\n public gridData: AgGridDemoRow[] = [];\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n inject,\n} from '@angular/core';\nimport {\n SkyAgGridAutocompleteProperties,\n SkyAgGridDatepickerProperties,\n SkyAgGridModule,\n SkyAgGridService,\n SkyCellType,\n} from '@skyux/ag-grid';\nimport { SkyAutocompleteSelectionChange } from '@skyux/lookup';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport {\n ColDef,\n GridApi,\n GridOptions,\n GridReadyEvent,\n ICellEditorParams,\n IRowNode,\n} from 'ag-grid-community';\n\nimport { AgGridDemoRow, DEPARTMENTS, JOB_TITLES } from './data';\nimport { EditModalContext } from './edit-modal-context';\n\n@Component({\n selector: 'app-edit-modal',\n templateUrl: './edit-modal.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AgGridModule, SkyAgGridModule, SkyModalModule],\n})\nexport class EditModalComponent {\n protected gridData: AgGridDemoRow[];\n protected gridOptions: GridOptions;\n\n #columnDefs: ColDef[];\n #gridApi: GridApi | undefined;\n\n protected readonly instance = inject(SkyModalInstance);\n readonly #agGridService = inject(SkyAgGridService);\n readonly #changeDetector = inject(ChangeDetectorRef);\n readonly #context = inject(EditModalContext);\n\n constructor() {\n this.#columnDefs = [\n {\n field: 'name',\n headerName: 'Name',\n },\n {\n field: 'age',\n headerName: 'Age',\n type: SkyCellType.Number,\n maxWidth: 60,\n editable: true,\n },\n {\n field: 'startDate',\n headerName: 'Start date',\n type: SkyCellType.Date,\n sort: 'asc',\n },\n {\n field: 'endDate',\n headerName: 'End date',\n type: SkyCellType.Date,\n editable: true,\n cellEditorParams: (\n params: ICellEditorParams<AgGridDemoRow>,\n ): { skyComponentProperties: SkyAgGridDatepickerProperties } => {\n return {\n skyComponentProperties: {\n minDate: params.data.startDate,\n },\n };\n },\n },\n {\n field: 'department',\n headerName: 'Department',\n type: SkyCellType.Autocomplete,\n editable: true,\n cellEditorParams: (\n params: ICellEditorParams<AgGridDemoRow>,\n ): { skyComponentProperties: SkyAgGridAutocompleteProperties } => {\n return {\n skyComponentProperties: {\n data: DEPARTMENTS,\n selectionChange: (change): void => {\n this.#departmentSelectionChange(change, params.node);\n },\n },\n };\n },\n onCellValueChanged: (event): void => {\n if (event.newValue !== event.oldValue) {\n this.#clearJobTitle(event.node);\n }\n },\n },\n {\n field: 'jobTitle',\n headerName: 'Title',\n type: SkyCellType.Autocomplete,\n editable: true,\n cellEditorParams: (\n params: ICellEditorParams<AgGridDemoRow>,\n ): { skyComponentProperties: SkyAgGridAutocompleteProperties } => {\n const selectedDepartment = params.data?.department?.name;\n\n const editParams: {\n skyComponentProperties: SkyAgGridAutocompleteProperties;\n } = { skyComponentProperties: { data: [] } };\n\n if (selectedDepartment) {\n editParams.skyComponentProperties.data =\n JOB_TITLES[selectedDepartment];\n }\n\n return editParams;\n },\n },\n {\n colId: 'validationCurrency',\n field: 'validationCurrency',\n headerName: 'Validation currency',\n type: [SkyCellType.CurrencyValidator],\n editable: true,\n },\n {\n colId: 'validationDate',\n field: 'validationDate',\n headerName: 'Validation date',\n type: [SkyCellType.Date, SkyCellType.Validator],\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: Date): boolean =>\n !!value && value > new Date(1985, 9, 26),\n validatorMessage: 'Enter a future date.',\n },\n },\n editable: true,\n },\n ];\n\n this.gridData = this.#context.gridData;\n\n const gridOptions: GridOptions = {\n columnDefs: this.#columnDefs,\n onGridReady: (gridReadyEvent): void => {\n this.onGridReady(gridReadyEvent);\n },\n };\n\n this.gridOptions = this.#agGridService.getEditableGridOptions({\n gridOptions,\n });\n\n this.#changeDetector.markForCheck();\n }\n\n public onGridReady(gridReadyEvent: GridReadyEvent): void {\n this.#gridApi = gridReadyEvent.api;\n this.#changeDetector.markForCheck();\n }\n\n #departmentSelectionChange(\n change: SkyAutocompleteSelectionChange,\n node: IRowNode<AgGridDemoRow>,\n ): void {\n if (change.selectedItem && change.selectedItem !== node.data?.department) {\n this.#clearJobTitle(node);\n }\n }\n\n #clearJobTitle(node: IRowNode<AgGridDemoRow> | null): void {\n if (node?.data) {\n node.data.jobTitle = undefined;\n\n if (this.#gridApi) {\n this.#gridApi.refreshCells({\n rowNodes: [node],\n });\n }\n }\n\n this.#changeDetector.markForCheck();\n }\n}\n","<sky-modal headingText=\"Edit employee information\">\n <sky-modal-content>\n <sky-ag-grid-wrapper>\n <ag-grid-angular\n class=\"sky-ag-grid-editable\"\n [gridOptions]=\"gridOptions\"\n [rowData]=\"gridData\"\n />\n </sky-ag-grid-wrapper>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-primary\"\n type=\"button\"\n (click)=\"instance.save(gridData)\"\n >\n Save\n </button>\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n (click)=\"instance.cancel()\"\n >\n Cancel\n </button>\n </sky-modal-footer>\n</sky-modal>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n inject,\n} from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SkyIdModule } from '@skyux/core';\nimport {\n SkyDataManagerFilterData,\n SkyDataManagerFilterModalContext,\n} from '@skyux/data-manager';\nimport { SkyCheckboxModule } from '@skyux/forms';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\n\nimport { Filters } from './filters';\n\n@Component({\n selector: 'app-filter-modal',\n templateUrl: './filter-modal.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [FormsModule, SkyCheckboxModule, SkyIdModule, SkyModalModule],\n})\nexport class FilterModalComponent {\n protected hideSales = false;\n protected jobTitle = '';\n\n readonly #changeDetector = inject(ChangeDetectorRef);\n readonly #context = inject(SkyDataManagerFilterModalContext);\n readonly #instance = inject(SkyModalInstance);\n\n constructor() {\n if (this.#context.filterData?.filters) {\n const filters = this.#context.filterData.filters as Filters;\n\n this.jobTitle = filters.jobTitle ?? 'any';\n this.hideSales = filters.hideSales ?? false;\n }\n\n this.#changeDetector.markForCheck();\n }\n\n protected applyFilters(): void {\n const result: SkyDataManagerFilterData = {};\n\n result.filtersApplied = this.jobTitle !== 'any' || this.hideSales;\n result.filters = {\n jobTitle: this.jobTitle,\n hideSales: this.hideSales,\n } satisfies Filters;\n\n this.#changeDetector.markForCheck();\n this.#instance.save(result);\n }\n\n protected clearAllFilters(): void {\n this.hideSales = false;\n this.jobTitle = 'any';\n this.#changeDetector.markForCheck();\n }\n\n protected cancel(): void {\n this.#instance.cancel();\n }\n}\n","<sky-modal headingText=\"Filter employees\">\n <sky-modal-content>\n <label [for]=\"jobTitleInput.id\">Job Title</label>\n <select\n #jobTitleInput\n class=\"sky-form-control\"\n skyId=\"jobTitleInput\"\n [(ngModel)]=\"jobTitle\"\n >\n <option value=\"any\">Any job title</option>\n <option value=\"Product Manager\">Product Manager</option>\n <option value=\"Software Engineer\">Software Engineer</option>\n </select>\n <div class=\"sky-margin-stacked-lg\">\n <sky-checkbox labelText=\"Hide Sales employees\" [(ngModel)]=\"hideSales\" />\n </div>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-primary\"\n type=\"button\"\n (click)=\"applyFilters()\"\n >\n Apply filters\n </button>\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n (click)=\"clearAllFilters()\"\n >\n Clear all filters\n </button>\n <button class=\"sky-btn sky-btn-link\" type=\"button\" (click)=\"cancel()\">\n Cancel\n </button>\n </sky-modal-footer>\n</sky-modal>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\nimport { ICellRendererParams } from 'ag-grid-community';\n\nimport { AgGridDemoRow } from './data';\n\n@Component({\n selector: 'app-context-menu',\n templateUrl: './context-menu.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyDropdownModule],\n})\nexport class ContextMenuComponent implements ICellRendererAngularComp {\n public contextMenuAriaLabel = '';\n public deleteAriaLabel = '';\n public markInactiveAriaLabel = '';\n public moreInfoAriaLabel = '';\n\n #name: string | undefined;\n\n public agInit(params: ICellRendererParams<AgGridDemoRow>): void {\n this.#name = params.data?.name;\n this.contextMenuAriaLabel = `Context menu for ${this.#name}`;\n this.deleteAriaLabel = `Delete ${this.#name}`;\n this.markInactiveAriaLabel = `Mark ${this.#name} inactive`;\n this.moreInfoAriaLabel = `More info for ${this.#name}`;\n }\n\n public refresh(): boolean {\n return false;\n }\n\n protected actionClicked(action: string): void {\n alert(`${action} clicked for ${this.#name}`);\n }\n}\n","<sky-dropdown buttonType=\"context-menu\" [label]=\"contextMenuAriaLabel\">\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"deleteAriaLabel\"\n (click)=\"actionClicked('Delete')\"\n >\n Delete\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"markInactiveAriaLabel\"\n (click)=\"actionClicked('Mark inactive')\"\n >\n Mark inactive\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"moreInfoAriaLabel\"\n (click)=\"actionClicked('More info')\"\n >\n More info\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n</sky-dropdown>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnDestroy,\n OnInit,\n inject,\n} from '@angular/core';\nimport { SkyAgGridModule, SkyAgGridService, SkyCellType } from '@skyux/ag-grid';\nimport {\n SkyDataManagerService,\n SkyDataManagerState,\n SkyDataViewConfig,\n} from '@skyux/data-manager';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport {\n ColDef,\n GridApi,\n GridOptions,\n GridReadyEvent,\n RowSelectedEvent,\n ValueFormatterParams,\n} from 'ag-grid-community';\nimport { Subject, of, takeUntil } from 'rxjs';\n\nimport { ContextMenuComponent } from './context-menu.component';\nimport { AgGridDemoRow } from './data';\nimport { Filters } from './filters';\n\n@Component({\n selector: 'app-view-grid',\n templateUrl: './view-grid.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AgGridModule, SkyAgGridModule],\n})\nexport class ViewGridComponent implements OnInit, OnDestroy {\n @Input()\n public set items(value: AgGridDemoRow[]) {\n this.#_items = value;\n this.#changeDetectorRef.markForCheck();\n this.#gridApi?.refreshCells();\n }\n\n public get items(): AgGridDemoRow[] {\n return this.#_items;\n }\n\n #viewId = 'dataEntryGridWithDataManagerView';\n\n #columnDefs: ColDef[] = [\n {\n field: 'selected',\n type: SkyCellType.RowSelector,\n cellRendererParams: {\n // Could be a SkyAppResourcesService.getString call that returns an observable.\n label: (data: AgGridDemoRow) => of(`Select ${data.name}`),\n },\n },\n {\n colId: 'context',\n maxWidth: 50,\n sortable: false,\n cellRenderer: ContextMenuComponent,\n headerName: 'Context menu',\n headerComponentParams: {\n headerHidden: true,\n },\n },\n {\n field: 'name',\n headerName: 'Name',\n },\n {\n field: 'age',\n headerName: 'Age',\n type: SkyCellType.Number,\n maxWidth: 60,\n },\n {\n field: 'startDate',\n headerName: 'Start date',\n type: SkyCellType.Date,\n sort: 'asc',\n },\n {\n field: 'endDate',\n headerName: 'End date',\n type: SkyCellType.Date,\n valueFormatter: (params: ValueFormatterParams<AgGridDemoRow, Date>) =>\n this.#endDateFormatter(params),\n },\n {\n field: 'department',\n headerName: 'Department',\n type: SkyCellType.Autocomplete,\n },\n {\n field: 'jobTitle',\n headerName: 'Title',\n type: SkyCellType.Autocomplete,\n },\n {\n field: 'validationCurrency',\n headerName: 'Validation currency',\n type: [SkyCellType.CurrencyValidator],\n },\n {\n field: 'validationDate',\n headerName: 'Validation date',\n type: [SkyCellType.Date, SkyCellType.Validator],\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: Date): boolean =>\n !!value && value > new Date(1985, 9, 26),\n validatorMessage: 'Please enter a future date',\n },\n },\n },\n ];\n\n protected displayedItems: AgGridDemoRow[] = [];\n protected gridOptions: GridOptions;\n protected isActive = false;\n protected isGridInitialized = false;\n protected noRowsTemplate = `<div class=\"sky-font-deemphasized\">No results found.</div>`;\n protected viewConfig: SkyDataViewConfig = {\n id: this.#viewId,\n name: 'Data Grid View',\n icon: 'table',\n searchEnabled: true,\n multiselectToolbarEnabled: true,\n columnPickerEnabled: true,\n filterButtonEnabled: true,\n columnOptions: [\n {\n id: 'selected',\n label: '',\n alwaysDisplayed: true,\n },\n {\n id: 'context',\n label: '',\n alwaysDisplayed: true,\n },\n {\n id: 'name',\n label: 'Name',\n description: 'The name of the employee.',\n },\n {\n id: 'age',\n label: 'Age',\n description: 'The age of the employee.',\n },\n {\n id: 'startDate',\n label: 'Start date',\n description: 'The start date of the employee.',\n },\n {\n id: 'endDate',\n label: 'End date',\n description: 'The end date of the employee.',\n },\n {\n id: 'department',\n label: 'Department',\n description: 'The department of the employee',\n },\n {\n id: 'jobTitle',\n label: 'Title',\n description: 'The job title of the employee.',\n },\n {\n id: 'validationCurrency',\n label: 'Validation currency',\n description: 'An example column for currency validation.',\n },\n {\n id: 'validationDate',\n label: 'Validation date',\n description: 'An example column for date validation.',\n },\n ],\n };\n\n #_items: AgGridDemoRow[] = [];\n\n #dataState = new SkyDataManagerState({});\n #gridApi: GridApi | undefined;\n #ngUnsubscribe = new Subject<void>();\n\n readonly #agGridSvc = inject(SkyAgGridService);\n readonly #changeDetectorRef = inject(ChangeDetectorRef);\n readonly #dataManagerSvc = inject(SkyDataManagerService);\n\n constructor() {\n this.gridOptions = this.#agGridSvc.getEditableGridOptions({\n gridOptions: {\n columnDefs: this.#columnDefs,\n onGridReady: this.onGridReady.bind(this),\n },\n });\n }\n\n public ngOnInit(): void {\n this.displayedItems = this.items;\n\n this.#dataManagerSvc.initDataView(this.viewConfig);\n\n this.#dataManagerSvc\n .getDataStateUpdates(this.#viewId)\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((state) => {\n this.#dataState = state;\n this.#setInitialColumnOrder();\n this.#updateData();\n this.#changeDetectorRef.detectChanges();\n });\n\n this.#dataManagerSvc\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((id) => {\n this.isActive = id === this.#viewId;\n this.#changeDetectorRef.detectChanges();\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n protected onGridReady(gridReadyEvent: GridReadyEvent): void {\n this.#gridApi = gridReadyEvent.api;\n this.#updateData();\n this.#changeDetectorRef.markForCheck();\n }\n\n protected onRowSelected(\n rowSelectedEvent: RowSelectedEvent<AgGridDemoRow>,\n ): void {\n if (!rowSelectedEvent.data?.selected) {\n this.#updateData();\n }\n }\n\n #endDateFormatter(params: ValueFormatterParams<AgGridDemoRow, Date>): string {\n return params.value\n ? params.value.toLocaleDateString('en-us', {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n })\n : 'N/A';\n }\n\n #filterItems(items: AgGridDemoRow[]): AgGridDemoRow[] {\n let filteredItems = items;\n const filterData = this.#dataState.filterData;\n\n if (filterData?.filters) {\n const filters = filterData.filters as Filters;\n\n filteredItems = items.filter((item) => {\n return (\n (!!(filters.hideSales && item.department.name !== 'Sales') ||\n !filters.hideSales) &&\n ((filters.jobTitle !== 'any' &&\n item.jobTitle?.name === filters.jobTitle) ||\n !filters.jobTitle ||\n filters.jobTitle === 'any')\n );\n });\n }\n\n return filteredItems;\n }\n\n #searchItems(items: AgGridDemoRow[]): AgGridDemoRow[] {\n let searchedItems = items;\n const searchText = this.#dataState.searchText;\n\n if (searchText) {\n searchedItems = items.filter((item) => {\n let property: keyof typeof item;\n for (property in item) {\n if (\n Object.prototype.hasOwnProperty.call(item, property) &&\n property === 'name'\n ) {\n const propertyText = item[property]?.toLowerCase();\n if (propertyText.includes(searchText)) {\n return true;\n }\n }\n }\n\n return false;\n });\n }\n\n return searchedItems;\n }\n\n #setInitialColumnOrder(): void {\n const viewState = this.#dataState.getViewStateById(this.#viewId);\n const visibleColumns = viewState?.displayedColumnIds ?? [];\n\n this.#columnDefs.sort((col1, col2) => {\n const col1Index = visibleColumns.findIndex(\n (colId: string) => colId === col1.colId,\n );\n const col2Index = visibleColumns.findIndex(\n (colId: string) => colId === col2.colId,\n );\n\n if (col1Index === -1) {\n col1.hide = true;\n return 0;\n } else if (col2Index === -1) {\n col2.hide = true;\n return 0;\n } else {\n return col1Index - col2Index;\n }\n });\n\n this.isGridInitialized = true;\n this.#changeDetectorRef.markForCheck();\n }\n\n #updateData(): void {\n this.displayedItems = this.#filterItems(this.#searchItems(this.items));\n\n if (this.#dataState.onlyShowSelected) {\n this.displayedItems = this.displayedItems.filter((item) => item.selected);\n }\n\n if (this.displayedItems.length > 0) {\n this.#gridApi?.hideOverlay();\n } else {\n this.#gridApi?.showNoRowsOverlay();\n }\n\n this.#changeDetectorRef.markForCheck();\n }\n}\n","<sky-data-view skyAgGridDataManagerAdapter [viewId]=\"viewConfig.id\">\n @if (isActive && isGridInitialized) {\n <sky-ag-grid-wrapper>\n <ag-grid-angular\n [gridOptions]=\"gridOptions\"\n [overlayNoRowsTemplate]=\"noRowsTemplate\"\n [rowData]=\"displayedItems\"\n (rowSelected)=\"onRowSelected($event)\"\n />\n </sky-ag-grid-wrapper>\n }\n</sky-data-view>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n OnDestroy,\n OnInit,\n inject,\n} from '@angular/core';\nimport {\n SkyDataManagerModule,\n SkyDataManagerService,\n SkyDataManagerState,\n} from '@skyux/data-manager';\nimport { SkyModalConfigurationInterface, SkyModalService } from '@skyux/modals';\n\nimport { Subject, takeUntil } from 'rxjs';\n\nimport { AG_GRID_DEMO_DATA, AgGridDemoRow } from './data';\nimport { EditModalContext } from './edit-modal-context';\nimport { EditModalComponent } from './edit-modal.component';\nimport { FilterModalComponent } from './filter-modal.component';\nimport { ViewGridComponent } from './view-grid.component';\n\n@Component({\n selector: 'app-ag-grid-data-entry-grid-data-manager-added-example',\n templateUrl: './example.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [SkyDataManagerService],\n imports: [ViewGridComponent, SkyDataManagerModule],\n})\nexport class AgGridDataEntryGridDataManagerAddedExampleComponent\n implements OnInit, OnDestroy\n{\n protected items = AG_GRID_DEMO_DATA;\n\n #activeViewId = 'dataEntryGridWithDataManagerView';\n\n #defaultDataState = new SkyDataManagerState({\n filterData: {\n filtersApplied: false,\n filters: {\n hideSales: false,\n },\n },\n views: [\n {\n viewId: 'dataEntryGridWithDataManagerView',\n displayedColumnIds: [\n 'selected',\n 'context',\n 'name',\n 'age',\n 'startDate',\n 'endDate',\n 'department',\n 'jobTitle',\n 'validationCurrency',\n 'validationDate',\n ],\n },\n ],\n });\n\n #dataManagerConfig = {\n filterModalComponent: FilterModalComponent,\n sortOptions: [\n {\n id: 'az',\n label: 'Name (A - Z)',\n descending: false,\n propertyName: 'name',\n },\n {\n id: 'za',\n label: 'Name (Z - A)',\n descending: true,\n propertyName: 'name',\n },\n ],\n };\n\n #ngUnsubscribe = new Subject<void>();\n\n readonly #changeDetectorRef = inject(ChangeDetectorRef);\n readonly #dataManagerSvc = inject(SkyDataManagerService);\n readonly #modalSvc = inject(SkyModalService);\n\n constructor() {\n this.#dataManagerSvc\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((activeViewId) => {\n this.#activeViewId = activeViewId;\n this.#changeDetectorRef.detectChanges();\n });\n }\n\n public ngOnInit(): void {\n this.#dataManagerSvc.initDataManager({\n activeViewId: this.#activeViewId,\n dataManagerConfig: this.#dataManagerConfig,\n defaultDataState: this.#defaultDataState,\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n protected openModal(): void {\n const context = new EditModalContext();\n context.gridData = this.items.slice();\n\n this.#changeDetectorRef.markForCheck();\n\n const options: SkyModalConfigurationInterface = {\n ariaDescribedBy: 'docs-edit-grid-modal-content',\n providers: [\n {\n provide: EditModalContext,\n useValue: context,\n },\n ],\n size: 'large',\n };\n\n const modalInstance = this.#modalSvc.open(EditModalComponent, options);\n\n modalInstance.closed.subscribe((result) => {\n if (result.reason === 'cancel' || result.reason === 'close') {\n alert('Edits canceled!');\n } else {\n this.items = result.data as AgGridDemoRow[];\n alert('Saving data!');\n }\n\n this.#changeDetectorRef.markForCheck();\n });\n }\n}\n","<sky-data-manager>\n <sky-data-manager-toolbar>\n <sky-data-manager-toolbar-left-item>\n <button\n class=\"sky-btn sky-btn-primary\"\n type=\"button\"\n (click)=\"openModal()\"\n >\n Edit\n </button>\n </sky-data-manager-toolbar-left-item>\n </sky-data-manager-toolbar>\n <app-view-grid [items]=\"items\" />\n</sky-data-manager>\n","export interface AutocompleteOption {\n id: string;\n name: string;\n}\n\nexport const DEPARTMENTS = [\n {\n id: '1',\n name: 'Marketing',\n },\n {\n id: '2',\n name: 'Sales',\n },\n {\n id: '3',\n name: 'Engineering',\n },\n {\n id: '4',\n name: 'Customer Support',\n },\n];\n\nexport const JOB_TITLES: Record<string, AutocompleteOption[]> = {\n Marketing: [\n {\n id: '1',\n name: 'Social Media Coordinator',\n },\n {\n id: '2',\n name: 'Blog Manager',\n },\n {\n id: '3',\n name: 'Events Manager',\n },\n ],\n Sales: [\n {\n id: '4',\n name: 'Business Development Representative',\n },\n {\n id: '5',\n name: 'Account Executive',\n },\n ],\n Engineering: [\n {\n id: '6',\n name: 'Software Engineer',\n },\n {\n id: '7',\n name: 'Senior Software Engineer',\n },\n {\n id: '8',\n name: 'Principal Software Engineer',\n },\n {\n id: '9',\n name: 'UX Designer',\n },\n {\n id: '10',\n name: 'Product Manager',\n },\n ],\n 'Customer Support': [\n {\n id: '11',\n name: 'Customer Support Representative',\n },\n {\n id: '12',\n name: 'Account Manager',\n },\n {\n id: '13',\n name: 'Customer Support Specialist',\n },\n ],\n};\n\nexport interface AgGridDemoRow {\n selected?: boolean;\n name: string;\n age: number;\n startDate: Date;\n endDate?: Date;\n department: AutocompleteOption;\n jobTitle?: AutocompleteOption;\n}\n\nexport const AG_GRID_DEMO_DATA: AgGridDemoRow[] = [\n {\n selected: true,\n name: 'Billy Bob',\n age: 55,\n startDate: new Date('12/1/1994'),\n department: DEPARTMENTS[3],\n jobTitle: JOB_TITLES['Customer Support'][1],\n },\n {\n selected: false,\n name: 'Jane Deere',\n age: 33,\n startDate: new Date('7/15/2009'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][2],\n },\n {\n selected: false,\n name: 'John Doe',\n age: 38,\n startDate: new Date('9/1/2017'),\n endDate: new Date('9/30/2017'),\n department: DEPARTMENTS[1],\n },\n {\n selected: false,\n name: 'David Smith',\n age: 51,\n startDate: new Date('1/1/2012'),\n endDate: new Date('6/15/2018'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][4],\n },\n {\n selected: true,\n name: 'Emily Johnson',\n age: 41,\n startDate: new Date('1/15/2014'),\n department: DEPARTMENTS[0],\n jobTitle: JOB_TITLES['Marketing'][2],\n },\n {\n selected: false,\n name: 'Nicole Davidson',\n age: 22,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][0],\n },\n {\n selected: false,\n name: 'Carl Roberts',\n age: 23,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][3],\n },\n];\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { SkyAgGridModule, SkyAgGridService, SkyCellType } from '@skyux/ag-grid';\nimport { SkyInputBoxModule } from '@skyux/forms';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport { ValueFormatterParams } from 'ag-grid-community';\n\nimport { AG_GRID_DEMO_DATA, AgGridDemoRow } from './data';\n\n@Component({\n selector: 'app-ag-grid-data-entry-grid-focus-example',\n templateUrl: './example.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AgGridModule, SkyAgGridModule, SkyInputBoxModule],\n})\nexport class AgGridDataEntryGridFocusExampleComponent {\n protected gridData = AG_GRID_DEMO_DATA;\n protected gridOptions = inject(SkyAgGridService).getEditableGridOptions({\n gridOptions: {\n columnDefs: [\n {\n field: 'name',\n headerName: 'Name',\n type: SkyCellType.Text,\n editable: true,\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: string): boolean => String(value).length <= 10,\n validatorMessage: `Value exceeds maximum length`,\n },\n },\n },\n {\n field: 'age',\n headerName: 'Age',\n type: SkyCellType.Number,\n editable: true,\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: number): boolean => value >= 18,\n validatorMessage: `Age must be 18+`,\n },\n },\n maxWidth: 60,\n },\n {\n field: 'startDate',\n headerName: 'Start date',\n type: SkyCellType.Date,\n editable: true,\n sort: 'asc',\n },\n {\n field: 'endDate',\n headerName: 'End date',\n type: SkyCellType.Date,\n editable: true,\n valueFormatter: (params: ValueFormatterParams<AgGridDemoRow, Date>) =>\n this.#endDateFormatter(params),\n },\n {\n field: 'department',\n headerName: 'Department',\n type: SkyCellType.Autocomplete,\n editable: true,\n },\n {\n field: 'jobTitle',\n headerName: 'Title',\n type: SkyCellType.Autocomplete,\n editable: true,\n },\n {\n colId: 'validationCurrency',\n field: 'validationCurrency',\n headerName: 'Validation currency',\n type: [SkyCellType.CurrencyValidator],\n editable: true,\n },\n {\n colId: 'validationDate',\n field: 'validationDate',\n headerName: 'Validation date',\n type: [SkyCellType.Date, SkyCellType.Validator],\n editable: true,\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: Date): boolean =>\n !!value && value > new Date(1985, 9, 26),\n validatorMessage: 'Enter a future date',\n },\n },\n },\n ],\n focusGridInnerElement: (params) => {\n params.api.startEditingCell({\n rowIndex: 0,\n colKey: 'name',\n });\n return true;\n },\n },\n });\n\n #endDateFormatter(params: ValueFormatterParams<AgGridDemoRow, Date>): string {\n return params.value\n ? params.value.toLocaleDateString('en-us', {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n })\n : 'N/A';\n }\n}\n","<sky-input-box\n labelText=\"Start here\"\n helpPopoverContent=\"Then tab to the grid\"\n stacked\n>\n <input type=\"text\" />\n</sky-input-box>\n<div class=\"sky-margin-stacked-md\">\n <sky-ag-grid-wrapper>\n <ag-grid-angular\n class=\"sky-ag-grid-editable\"\n [gridOptions]=\"gridOptions\"\n [rowData]=\"gridData\"\n />\n </sky-ag-grid-wrapper>\n</div>\n<sky-input-box\n labelText=\"Or start here\"\n helpPopoverContent=\"Then tab backwards to the grid\"\n stacked\n>\n <input type=\"text\" />\n</sky-input-box>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\nimport { ICellRendererParams } from 'ag-grid-community';\n\nimport { AgGridDemoRow } from './data';\n\n@Component({\n selector: 'app-context-menu',\n templateUrl: './context-menu.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyDropdownModule],\n})\nexport class ContextMenuComponent implements ICellRendererAngularComp {\n public contextMenuAriaLabel = '';\n public deleteAriaLabel = '';\n public markInactiveAriaLabel = '';\n public moreInfoAriaLabel = '';\n\n #name: string | undefined;\n\n public agInit(params: ICellRendererParams<AgGridDemoRow>): void {\n this.#name = params.data?.name;\n this.contextMenuAriaLabel = `Context menu for ${this.#name}`;\n this.deleteAriaLabel = `Delete ${this.#name}`;\n this.markInactiveAriaLabel = `Mark ${this.#name} inactive`;\n this.moreInfoAriaLabel = `More info for ${this.#name}`;\n }\n\n public refresh(): boolean {\n return false;\n }\n\n protected actionClicked(action: string): void {\n alert(`${action} clicked for ${this.#name}`);\n }\n}\n","<sky-dropdown buttonType=\"context-menu\" [label]=\"contextMenuAriaLabel\">\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"deleteAriaLabel\"\n (click)=\"actionClicked('Delete')\"\n >\n Delete\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"markInactiveAriaLabel\"\n (click)=\"actionClicked('Mark inactive')\"\n >\n Mark inactive\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"moreInfoAriaLabel\"\n (click)=\"actionClicked('More info')\"\n >\n More info\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n</sky-dropdown>\n","export interface AutocompleteOption {\n id: string;\n name: string;\n}\n\nexport const DEPARTMENTS = [\n {\n id: '1',\n name: 'Marketing',\n },\n {\n id: '2',\n name: 'Sales',\n },\n {\n id: '3',\n name: 'Engineering',\n },\n {\n id: '4',\n name: 'Customer Support',\n },\n];\n\nexport const JOB_TITLES: Record<string, AutocompleteOption[]> = {\n Marketing: [\n {\n id: '1',\n name: 'Social Media Coordinator',\n },\n {\n id: '2',\n name: 'Blog Manager',\n },\n {\n id: '3',\n name: 'Events Manager',\n },\n ],\n Sales: [\n {\n id: '4',\n name: 'Business Development Representative',\n },\n {\n id: '5',\n name: 'Account Executive',\n },\n ],\n Engineering: [\n {\n id: '6',\n name: 'Software Engineer',\n },\n {\n id: '7',\n name: 'Senior Software Engineer',\n },\n {\n id: '8',\n name: 'Principal Software Engineer',\n },\n {\n id: '9',\n name: 'UX Designer',\n },\n {\n id: '10',\n name: 'Product Manager',\n },\n ],\n 'Customer Support': [\n {\n id: '11',\n name: 'Customer Support Representative',\n },\n {\n id: '12',\n name: 'Account Manager',\n },\n {\n id: '13',\n name: 'Customer Support Specialist',\n },\n ],\n};\n\nexport interface AgGridDemoRow {\n selected?: boolean;\n name: string;\n age: number;\n startDate: Date;\n endDate?: Date;\n department: AutocompleteOption;\n jobTitle?: AutocompleteOption;\n}\n\nexport const AG_GRID_DEMO_DATA = [\n {\n name: 'Billy Bob',\n age: 55,\n startDate: new Date('12/1/1994'),\n department: DEPARTMENTS[3],\n jobTitle: JOB_TITLES['Customer Support'][1],\n },\n {\n name: 'Jane Deere',\n age: 33,\n startDate: new Date('7/15/2009'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][2],\n },\n {\n name: 'John Doe',\n age: 38,\n startDate: new Date('9/1/2017'),\n endDate: new Date('9/30/2017'),\n department: DEPARTMENTS[1],\n },\n {\n name: 'David Smith',\n age: 51,\n startDate: new Date('1/1/2012'),\n endDate: new Date('6/15/2018'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][4],\n },\n {\n name: 'Emily Johnson',\n age: 41,\n startDate: new Date('1/15/2014'),\n department: DEPARTMENTS[0],\n jobTitle: JOB_TITLES['Marketing'][2],\n },\n {\n name: 'Nicole Davidson',\n age: 22,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][0],\n },\n {\n name: 'Carl Roberts',\n age: 23,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][3],\n },\n];\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { SkyAgGridModule, SkyAgGridService, SkyCellType } from '@skyux/ag-grid';\nimport { SkyDataManagerService } from '@skyux/data-manager';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport { ColDef, GridOptions, ValueFormatterParams } from 'ag-grid-community';\n\nimport { ContextMenuComponent } from './context-menu.component';\nimport { AG_GRID_DEMO_DATA, AgGridDemoRow } from './data';\n\n@Component({\n selector: 'app-ag-grid-data-grid-basic-example',\n templateUrl: './example.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [SkyDataManagerService],\n imports: [AgGridModule, SkyAgGridModule],\n})\nexport class AgGridDataGridBasicExampleComponent {\n protected gridData = AG_GRID_DEMO_DATA;\n protected gridOptions: GridOptions;\n\n #columnDefs: ColDef[] = [\n {\n colId: 'context',\n maxWidth: 50,\n sortable: false,\n cellRenderer: ContextMenuComponent,\n },\n {\n field: 'name',\n headerName: 'Name',\n },\n {\n field: 'age',\n headerName: 'Age',\n type: SkyCellType.Number,\n maxWidth: 60,\n },\n {\n field: 'startDate',\n headerName: 'Start date',\n type: SkyCellType.Date,\n sort: 'asc',\n },\n {\n field: 'endDate',\n headerName: 'End date',\n type: SkyCellType.Date,\n valueFormatter: (params: ValueFormatterParams<AgGridDemoRow, Date>) =>\n this.#endDateFormatter(params),\n },\n {\n field: 'department',\n headerName: 'Department',\n type: SkyCellType.Autocomplete,\n },\n {\n field: 'jobTitle',\n headerName: 'Title',\n type: SkyCellType.Autocomplete,\n },\n ];\n\n readonly #agGridSvc = inject(SkyAgGridService);\n\n constructor() {\n const gridOptions: GridOptions = {\n columnDefs: this.#columnDefs,\n rowSelection: { mode: 'singleRow' },\n };\n\n this.gridOptions = this.#agGridSvc.getGridOptions({\n gridOptions,\n });\n }\n\n #endDateFormatter(params: ValueFormatterParams<AgGridDemoRow, Date>): string {\n return params.value\n ? params.value.toLocaleDateString('en-us', {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n })\n : 'N/A';\n }\n}\n","<sky-ag-grid-wrapper>\n <ag-grid-angular [gridOptions]=\"gridOptions\" [rowData]=\"gridData\" />\n</sky-ag-grid-wrapper>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\nimport { ICellRendererParams } from 'ag-grid-community';\n\nimport { AgGridDemoRow } from './data';\n\n@Component({\n selector: 'app-context-menu',\n templateUrl: './context-menu.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyDropdownModule],\n})\nexport class ContextMenuComponent implements ICellRendererAngularComp {\n public contextMenuAriaLabel = '';\n public deleteAriaLabel = '';\n public markInactiveAriaLabel = '';\n public moreInfoAriaLabel = '';\n\n #name: string | undefined;\n\n public agInit(params: ICellRendererParams<AgGridDemoRow>): void {\n this.#name = params.data?.name;\n this.contextMenuAriaLabel = `Context menu for ${this.#name}`;\n this.deleteAriaLabel = `Delete ${this.#name}`;\n this.markInactiveAriaLabel = `Mark ${this.#name} inactive`;\n this.moreInfoAriaLabel = `More info for ${this.#name}`;\n }\n\n public refresh(): boolean {\n return false;\n }\n\n protected actionClicked(action: string): void {\n alert(`${action} clicked for ${this.#name}`);\n }\n}\n","<sky-dropdown buttonType=\"context-menu\" [label]=\"contextMenuAriaLabel\">\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"deleteAriaLabel\"\n (click)=\"actionClicked('Delete')\"\n >\n Delete\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"markInactiveAriaLabel\"\n (click)=\"actionClicked('Mark inactive')\"\n >\n Mark inactive\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"moreInfoAriaLabel\"\n (click)=\"actionClicked('More info')\"\n >\n More info\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n</sky-dropdown>\n","export interface AutocompleteOption {\n id: string;\n name: string;\n}\n\nexport const DEPARTMENTS = [\n {\n id: '1',\n name: 'Marketing',\n },\n {\n id: '2',\n name: 'Sales',\n },\n {\n id: '3',\n name: 'Engineering',\n },\n {\n id: '4',\n name: 'Customer Support',\n },\n];\n\nexport const JOB_TITLES: Record<string, AutocompleteOption[]> = {\n Marketing: [\n {\n id: '1',\n name: 'Social Media Coordinator',\n },\n {\n id: '2',\n name: 'Blog Manager',\n },\n {\n id: '3',\n name: 'Events Manager',\n },\n ],\n Sales: [\n {\n id: '4',\n name: 'Business Development Representative',\n },\n {\n id: '5',\n name: 'Account Executive',\n },\n ],\n Engineering: [\n {\n id: '6',\n name: 'Software Engineer',\n },\n {\n id: '7',\n name: 'Senior Software Engineer',\n },\n {\n id: '8',\n name: 'Principal Software Engineer',\n },\n {\n id: '9',\n name: 'UX Designer',\n },\n {\n id: '10',\n name: 'Product Manager',\n },\n ],\n 'Customer Support': [\n {\n id: '11',\n name: 'Customer Support Representative',\n },\n {\n id: '12',\n name: 'Account Manager',\n },\n {\n id: '13',\n name: 'Customer Support Specialist',\n },\n ],\n};\n\nexport interface AgGridDemoRow {\n selected?: boolean;\n name: string;\n age: number;\n startDate: Date;\n endDate?: Date;\n department: AutocompleteOption;\n jobTitle?: AutocompleteOption;\n}\n\nexport const AG_GRID_DEMO_DATA: AgGridDemoRow[] = [\n {\n selected: true,\n name: 'Billy Bob',\n age: 55,\n startDate: new Date('12/1/1994'),\n department: DEPARTMENTS[3],\n jobTitle: JOB_TITLES['Customer Support'][1],\n },\n {\n selected: false,\n name: 'Jane Deere',\n age: 33,\n startDate: new Date('7/15/2009'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][2],\n },\n {\n selected: false,\n name: 'John Doe',\n age: 38,\n startDate: new Date('9/1/2017'),\n endDate: new Date('9/30/2017'),\n department: DEPARTMENTS[1],\n },\n {\n selected: false,\n name: 'David Smith',\n age: 51,\n startDate: new Date('1/1/2012'),\n endDate: new Date('6/15/2018'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][4],\n },\n {\n selected: true,\n name: 'Emily Johnson',\n age: 41,\n startDate: new Date('1/15/2014'),\n department: DEPARTMENTS[0],\n jobTitle: JOB_TITLES['Marketing'][2],\n },\n {\n selected: false,\n name: 'Nicole Davidson',\n age: 22,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][0],\n },\n {\n selected: false,\n name: 'Carl Roberts',\n age: 23,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][3],\n },\n];\n","import { AgGridDemoRow } from './data';\n\nexport class EditModalContext {\n public gridData: AgGridDemoRow[] = [];\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n inject,\n} from '@angular/core';\nimport {\n SkyAgGridAutocompleteProperties,\n SkyAgGridDatepickerProperties,\n SkyAgGridModule,\n SkyAgGridService,\n SkyCellType,\n} from '@skyux/ag-grid';\nimport { SkyAutocompleteSelectionChange } from '@skyux/lookup';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport {\n ColDef,\n GridApi,\n GridOptions,\n GridReadyEvent,\n ICellEditorParams,\n IRowNode,\n} from 'ag-grid-community';\n\nimport { AgGridDemoRow, DEPARTMENTS, JOB_TITLES } from './data';\nimport { EditModalContext } from './edit-modal-context';\n\n@Component({\n selector: 'app-edit-modal',\n templateUrl: './edit-modal.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AgGridModule, SkyAgGridModule, SkyModalModule],\n})\nexport class EditModalComponent {\n protected gridData: AgGridDemoRow[];\n protected gridOptions: GridOptions;\n\n #columnDefs: ColDef[];\n #gridApi: GridApi | undefined;\n\n protected readonly instance = inject(SkyModalInstance);\n readonly #agGridSvc = inject(SkyAgGridService);\n readonly #changeDetectorRef = inject(ChangeDetectorRef);\n readonly #context = inject(EditModalContext);\n\n constructor() {\n this.#columnDefs = [\n {\n field: 'name',\n headerName: 'Name',\n type: SkyCellType.Text,\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: string): boolean => String(value).length <= 10,\n validatorMessage: `Value exceeds maximum length`,\n },\n },\n cellEditorParams: {\n skyComponentProperties: {\n maxlength: 10,\n },\n },\n editable: true,\n },\n {\n field: 'age',\n headerName: 'Age',\n type: SkyCellType.Number,\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: number): boolean => value >= 18,\n validatorMessage: `Age must be 18+`,\n },\n },\n maxWidth: 60,\n cellEditorParams: {\n skyComponentProperties: {\n min: 18,\n },\n },\n editable: true,\n },\n {\n field: 'startDate',\n headerName: 'Start date',\n type: SkyCellType.Date,\n sort: 'asc',\n },\n {\n field: 'endDate',\n headerName: 'End date',\n type: SkyCellType.Date,\n editable: true,\n cellEditorParams: (\n params: ICellEditorParams<AgGridDemoRow>,\n ): { skyComponentProperties: SkyAgGridDatepickerProperties } => {\n return { skyComponentProperties: { minDate: params.data.startDate } };\n },\n },\n {\n field: 'department',\n headerName: 'Department',\n type: SkyCellType.Autocomplete,\n editable: true,\n cellEditorParams: (\n params: ICellEditorParams<AgGridDemoRow>,\n ): { skyComponentProperties: SkyAgGridAutocompleteProperties } => {\n return {\n skyComponentProperties: {\n data: DEPARTMENTS,\n selectionChange: (change): void => {\n this.#departmentSelectionChange(change, params.node);\n },\n },\n };\n },\n onCellValueChanged: (event): void => {\n if (event.newValue !== event.oldValue) {\n this.#clearJobTitle(event.node);\n }\n },\n },\n {\n field: 'jobTitle',\n headerName: 'Title',\n type: SkyCellType.Autocomplete,\n editable: true,\n cellEditorParams: (\n params: ICellEditorParams<AgGridDemoRow>,\n ): { skyComponentProperties: SkyAgGridAutocompleteProperties } => {\n const selectedDepartment = params.data?.department?.name;\n const editParams: {\n skyComponentProperties: SkyAgGridAutocompleteProperties;\n } = { skyComponentProperties: { data: [] } };\n\n if (selectedDepartment) {\n editParams.skyComponentProperties.data =\n JOB_TITLES[selectedDepartment];\n }\n\n return editParams;\n },\n },\n {\n colId: 'validationCurrency',\n field: 'validationCurrency',\n headerName: 'Validation currency',\n type: [SkyCellType.CurrencyValidator],\n editable: true,\n },\n {\n colId: 'validationDate',\n field: 'validationDate',\n headerName: 'Validation date',\n type: [SkyCellType.Date, SkyCellType.Validator],\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: Date): boolean =>\n !!value && value > new Date(1985, 9, 26),\n validatorMessage: 'Please enter a future date',\n },\n },\n editable: true,\n },\n ];\n\n this.gridData = this.#context.gridData;\n\n const gridOptions: GridOptions = {\n columnDefs: this.#columnDefs,\n onGridReady: (gridReadyEvent): void => {\n this.onGridReady(gridReadyEvent);\n },\n };\n\n this.gridOptions = this.#agGridSvc.getEditableGridOptions({\n gridOptions,\n });\n\n this.#changeDetectorRef.markForCheck();\n }\n\n public onGridReady(gridReadyEvent: GridReadyEvent): void {\n this.#gridApi = gridReadyEvent.api;\n this.#changeDetectorRef.markForCheck();\n }\n\n #departmentSelectionChange(\n change: SkyAutocompleteSelectionChange,\n node: IRowNode<AgGridDemoRow>,\n ): void {\n if (change.selectedItem && change.selectedItem !== node.data?.department) {\n this.#clearJobTitle(node);\n }\n }\n\n #clearJobTitle(node: IRowNode<AgGridDemoRow> | null): void {\n if (node?.data) {\n node.data.jobTitle = undefined;\n\n this.#changeDetectorRef.markForCheck();\n this.#gridApi?.refreshCells({ rowNodes: [node] });\n }\n }\n}\n","<sky-modal headingText=\"Edit employee information\">\n <sky-modal-content>\n <sky-ag-grid-wrapper>\n <ag-grid-angular\n class=\"sky-ag-grid-editable\"\n [gridOptions]=\"gridOptions\"\n [rowData]=\"gridData\"\n />\n </sky-ag-grid-wrapper>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-primary\"\n type=\"button\"\n (click)=\"instance.save(gridData)\"\n >\n Save\n </button>\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n (click)=\"instance.cancel()\"\n >\n Cancel\n </button>\n </sky-modal-footer>\n</sky-modal>\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { SkyAgGridHeaderInfo } from '@skyux/ag-grid';\nimport { SkyHelpInlineModule } from '@skyux/help-inline';\n\n@Component({\n selector: 'app-inline-help',\n templateUrl: './inline-help.component.html',\n styles: [\n `\n :host {\n display: block;\n }\n `,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyHelpInlineModule],\n})\nexport class InlineHelpComponent {\n protected displayName: string | undefined;\n\n readonly #headerInfo = inject(SkyAgGridHeaderInfo);\n\n constructor() {\n this.displayName = this.#headerInfo.displayName;\n }\n\n protected onHelpClick(): void {\n alert(`Help was clicked for ${this.displayName}.`);\n }\n}\n","<sky-help-inline\n class=\"sky-control-help\"\n [ariaLabel]=\"'Information about ' + displayName\"\n (actionClick)=\"onHelpClick()\"\n/>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n inject,\n} from '@angular/core';\nimport { SkyAgGridModule, SkyAgGridService, SkyCellType } from '@skyux/ag-grid';\nimport { SkyToolbarModule } from '@skyux/layout';\nimport { SkySearchModule } from '@skyux/lookup';\nimport {\n SkyModalCloseArgs,\n SkyModalConfigurationInterface,\n SkyModalService,\n} from '@skyux/modals';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport {\n ColDef,\n GridApi,\n GridOptions,\n GridReadyEvent,\n ValueFormatterParams,\n} from 'ag-grid-community';\nimport { of } from 'rxjs';\n\nimport { ContextMenuComponent } from './context-menu.component';\nimport { AG_GRID_DEMO_DATA, AgGridDemoRow } from './data';\nimport { EditModalContext } from './edit-modal-context';\nimport { EditModalComponent } from './edit-modal.component';\nimport { InlineHelpComponent } from './inline-help.component';\n\n@Component({\n selector: 'app-ag-grid-data-entry-grid-inline-help-example',\n templateUrl: './example.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AgGridModule, SkyAgGridModule, SkySearchModule, SkyToolbarModule],\n})\nexport class AgGridDataEntryGridInlineHelpExampleComponent {\n protected gridData = AG_GRID_DEMO_DATA;\n protected gridOptions: GridOptions;\n protected noRowsTemplate = `<div class=\"sky-font-deemphasized\">No results found.</div>`;\n protected searchText = '';\n\n #columnDefs: ColDef[] = [\n {\n field: 'selected',\n type: SkyCellType.RowSelector,\n cellRendererParams: {\n // Could be a SkyAppResourcesService.getString call that returns an observable.\n label: (data: AgGridDemoRow) => of(`Select ${data.name}`),\n },\n },\n {\n colId: 'context',\n maxWidth: 50,\n sortable: false,\n cellRenderer: ContextMenuComponent,\n headerName: 'Context menu',\n headerComponentParams: {\n headerHidden: true,\n },\n },\n {\n field: 'name',\n headerName: 'Name',\n type: SkyCellType.Text,\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: string): boolean => String(value).length <= 10,\n validatorMessage: `Value exceeds maximum length`,\n },\n },\n headerComponentParams: {\n inlineHelpComponent: InlineHelpComponent,\n },\n },\n {\n field: 'age',\n headerName: 'Age',\n type: SkyCellType.Number,\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: number): boolean => value >= 18,\n validatorMessage: `Age must be 18+`,\n },\n },\n maxWidth: 60,\n headerComponentParams: {\n inlineHelpComponent: InlineHelpComponent,\n },\n },\n {\n field: 'startDate',\n headerName: 'Start date',\n type: SkyCellType.Date,\n sort: 'asc',\n headerComponentParams: {\n inlineHelpComponent: InlineHelpComponent,\n },\n },\n {\n field: 'endDate',\n headerName: 'End date',\n type: SkyCellType.Date,\n valueFormatter: (params: ValueFormatterParams<AgGridDemoRow, Date>) =>\n this.#endDateFormatter(params),\n headerComponentParams: {\n inlineHelpComponent: InlineHelpComponent,\n },\n },\n {\n field: 'department',\n headerName: 'Department',\n type: SkyCellType.Autocomplete,\n headerComponentParams: {\n inlineHelpComponent: InlineHelpComponent,\n },\n },\n {\n field: 'jobTitle',\n headerName: 'Title',\n type: SkyCellType.Autocomplete,\n headerComponentParams: {\n inlineHelpComponent: InlineHelpComponent,\n },\n },\n {\n colId: 'validationCurrency',\n field: 'validationCurrency',\n headerName: 'Validation currency',\n type: [SkyCellType.CurrencyValidator],\n headerComponentParams: {\n inlineHelpComponent: InlineHelpComponent,\n },\n },\n {\n colId: 'validationDate',\n field: 'validationDate',\n headerName: 'Validation date',\n type: [SkyCellType.Date, SkyCellType.Validator],\n cellRendererParams: {\n skyComponentProperties: {\n validator: (value: Date): boolean =>\n !!value && value > new Date(1985, 9, 26),\n validatorMessage: 'Enter a future date',\n },\n },\n headerComponentParams: {\n inlineHelpComponent: InlineHelpComponent,\n },\n },\n ];\n #gridApi: GridApi | undefined;\n\n readonly #agGridSvc = inject(SkyAgGridService);\n readonly #modalSvc = inject(SkyModalService);\n readonly #changeDetectorRef = inject(ChangeDetectorRef);\n\n constructor() {\n const gridOptions: GridOptions = {\n columnDefs: this.#columnDefs,\n onGridReady: (gridReadyEvent): void => {\n this.onGridReady(gridReadyEvent);\n },\n };\n\n this.gridOptions = this.#agGridSvc.getEditableGridOptions({\n gridOptions,\n });\n\n this.#changeDetectorRef.markForCheck();\n }\n\n public onGridReady(gridReadyEvent: GridReadyEvent): void {\n this.#gridApi = gridReadyEvent.api;\n this.#changeDetectorRef.markForCheck();\n }\n\n protected openModal(): void {\n const context = new EditModalContext();\n context.gridData = this.gridData;\n\n const options: SkyModalConfigurationInterface = {\n providers: [\n {\n provide: EditModalContext,\n useValue: context,\n },\n ],\n ariaDescribedBy: 'docs-edit-grid-modal-content',\n size: 'large',\n };\n\n const modalInstance = this.#modalSvc.open(EditModalComponent, options);\n\n modalInstance.closed.subscribe((result: SkyModalCloseArgs) => {\n if (result.reason === 'cancel' || result.reason === 'close') {\n alert('Edits canceled!');\n } else {\n this.gridData = result.data as AgGridDemoRow[];\n this.#gridApi?.refreshCells();\n\n alert('Saving data!');\n }\n });\n }\n\n protected searchApplied(searchText: string | void): void {\n this.searchText = searchText ?? '';\n\n if (this.#gridApi) {\n this.#gridApi.updateGridOptions({ quickFilterText: this.searchText });\n const displayedRowCount = this.#gridApi.getDisplayedRowCount();\n\n if (displayedRowCount > 0) {\n this.#gridApi.hideOverlay();\n } else {\n this.#gridApi.showNoRowsOverlay();\n }\n }\n }\n\n #endDateFormatter(params: ValueFormatterParams<AgGridDemoRow, Date>): string {\n return params.value\n ? params.value.toLocaleDateString('en-us', {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n })\n : 'N/A';\n }\n}\n","<sky-toolbar>\n <sky-toolbar-item>\n <button class=\"sky-btn sky-btn-primary\" type=\"button\" (click)=\"openModal()\">\n Edit\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <sky-search\n [debounceTime]=\"250\"\n [searchText]=\"searchText\"\n (searchApply)=\"searchApplied($event)\"\n (searchChange)=\"searchApplied($event)\"\n (searchClear)=\"searchApplied($event)\"\n />\n </sky-toolbar-item>\n</sky-toolbar>\n\n<sky-ag-grid-wrapper>\n <ag-grid-angular\n [gridOptions]=\"gridOptions\"\n [overlayNoRowsTemplate]=\"noRowsTemplate\"\n [rowData]=\"gridData\"\n />\n</sky-ag-grid-wrapper>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\nimport { ICellRendererParams } from 'ag-grid-community';\n\nimport { AgGridDemoRow } from './data';\n\n@Component({\n selector: 'app-context-menu',\n templateUrl: './context-menu.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyDropdownModule],\n})\nexport class ContextMenuComponent implements ICellRendererAngularComp {\n public contextMenuAriaLabel = '';\n public deleteAriaLabel = '';\n public markInactiveAriaLabel = '';\n public moreInfoAriaLabel = '';\n\n #name: string | undefined;\n\n public agInit(params: ICellRendererParams<AgGridDemoRow>): void {\n this.#name = params.data?.name;\n this.contextMenuAriaLabel = `Context menu for ${this.#name}`;\n this.deleteAriaLabel = `Delete ${this.#name}`;\n this.markInactiveAriaLabel = `Mark ${this.#name} inactive`;\n this.moreInfoAriaLabel = `More info for ${this.#name}`;\n }\n\n public refresh(): boolean {\n return false;\n }\n\n protected actionClicked(action: string): void {\n alert(`${action} clicked for ${this.#name}`);\n }\n}\n","<sky-dropdown buttonType=\"context-menu\" [label]=\"contextMenuAriaLabel\">\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"deleteAriaLabel\"\n (click)=\"actionClicked('Delete')\"\n >\n Delete\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"markInactiveAriaLabel\"\n (click)=\"actionClicked('Mark inactive')\"\n >\n Mark inactive\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"moreInfoAriaLabel\"\n (click)=\"actionClicked('More info')\"\n >\n More info\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n</sky-dropdown>\n","export interface AutocompleteOption {\n id: string;\n name: string;\n}\n\nexport const DEPARTMENTS = [\n {\n id: '1',\n name: 'Marketing',\n },\n {\n id: '2',\n name: 'Sales',\n },\n {\n id: '3',\n name: 'Engineering',\n },\n {\n id: '4',\n name: 'Customer Support',\n },\n];\n\nexport const JOB_TITLES: Record<string, AutocompleteOption[]> = {\n Marketing: [\n {\n id: '1',\n name: 'Social Media Coordinator',\n },\n {\n id: '2',\n name: 'Blog Manager',\n },\n {\n id: '3',\n name: 'Events Manager',\n },\n ],\n Sales: [\n {\n id: '4',\n name: 'Business Development Representative',\n },\n {\n id: '5',\n name: 'Account Executive',\n },\n ],\n Engineering: [\n {\n id: '6',\n name: 'Software Engineer',\n },\n {\n id: '7',\n name: 'Senior Software Engineer',\n },\n {\n id: '8',\n name: 'Principal Software Engineer',\n },\n {\n id: '9',\n name: 'UX Designer',\n },\n {\n id: '10',\n name: 'Product Manager',\n },\n ],\n 'Customer Support': [\n {\n id: '11',\n name: 'Customer Support Representative',\n },\n {\n id: '12',\n name: 'Account Manager',\n },\n {\n id: '13',\n name: 'Customer Support Specialist',\n },\n ],\n};\n\nexport interface AgGridDemoRow {\n selected?: boolean;\n name: string;\n age: number;\n startDate: Date;\n endDate?: Date;\n department: AutocompleteOption;\n jobTitle?: AutocompleteOption;\n}\n\nexport const AG_GRID_DEMO_DATA = [\n {\n selected: false,\n name: 'Billy Bob',\n age: 55,\n startDate: new Date('12/1/1994'),\n department: DEPARTMENTS[3],\n jobTitle: JOB_TITLES['Customer Support'][1],\n },\n {\n selected: false,\n name: 'Jane Deere',\n age: 33,\n startDate: new Date('7/15/2009'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][2],\n },\n {\n selected: false,\n name: 'John Doe',\n age: 38,\n startDate: new Date('9/1/2017'),\n endDate: new Date('9/30/2017'),\n department: DEPARTMENTS[1],\n },\n {\n selected: false,\n name: 'David Smith',\n age: 51,\n startDate: new Date('1/1/2012'),\n endDate: new Date('6/15/2018'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][4],\n },\n {\n selected: true,\n name: 'Emily Johnson',\n age: 41,\n startDate: new Date('1/15/2014'),\n department: DEPARTMENTS[0],\n jobTitle: JOB_TITLES['Marketing'][2],\n },\n {\n selected: false,\n name: 'Nicole Davidson',\n age: 22,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][0],\n },\n {\n selected: false,\n name: 'Carl Roberts',\n age: 23,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][3],\n },\n];\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { SkyAgGridModule, SkyAgGridService, SkyCellType } from '@skyux/ag-grid';\nimport { SkyDataManagerService } from '@skyux/data-manager';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport { ColDef, GridOptions, ValueFormatterParams } from 'ag-grid-community';\nimport { of } from 'rxjs';\n\nimport { ContextMenuComponent } from './context-menu.component';\nimport { AG_GRID_DEMO_DATA, AgGridDemoRow } from './data';\n\n@Component({\n selector: 'app-ag-grid-data-grid-basic-multiselect-example',\n templateUrl: './example.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [SkyDataManagerService],\n imports: [AgGridModule, SkyAgGridModule],\n})\nexport class AgGridDataGridBasicMultiselectExampleComponent {\n protected gridData = AG_GRID_DEMO_DATA;\n protected gridOptions: GridOptions;\n\n #columnDefs: ColDef[] = [\n {\n field: 'selected',\n type: SkyCellType.RowSelector,\n cellRendererParams: {\n // Could be a SkyAppResourcesService.getString call that returns an observable.\n label: (data: AgGridDemoRow) => of(`Select ${data.name}`),\n },\n },\n {\n colId: 'context',\n maxWidth: 50,\n sortable: false,\n cellRenderer: ContextMenuComponent,\n },\n {\n field: 'name',\n headerName: 'Name',\n },\n {\n field: 'age',\n headerName: 'Age',\n type: SkyCellType.Number,\n maxWidth: 60,\n },\n {\n field: 'startDate',\n headerName: 'Start date',\n type: SkyCellType.Date,\n sort: 'asc',\n },\n {\n field: 'endDate',\n headerName: 'End date',\n type: SkyCellType.Date,\n valueFormatter: (params: ValueFormatterParams<AgGridDemoRow, Date>) =>\n this.#endDateFormatter(params),\n },\n {\n field: 'department',\n headerName: 'Department',\n type: SkyCellType.Autocomplete,\n },\n {\n field: 'jobTitle',\n headerName: 'Title',\n type: SkyCellType.Autocomplete,\n },\n ];\n\n readonly #agGridSvc = inject(SkyAgGridService);\n\n constructor() {\n const gridOptions: GridOptions = {\n columnDefs: this.#columnDefs,\n };\n\n this.gridOptions = this.#agGridSvc.getGridOptions({\n gridOptions,\n });\n }\n\n #endDateFormatter(params: ValueFormatterParams<AgGridDemoRow, Date>): string {\n return params.value\n ? params.value.toLocaleDateString('en-us', {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n })\n : 'N/A';\n }\n}\n","<sky-ag-grid-wrapper>\n <ag-grid-angular [gridOptions]=\"gridOptions\" [rowData]=\"gridData\" />\n</sky-ag-grid-wrapper>\n","export interface AutocompleteOption {\n id: string;\n name: string;\n}\n\nexport const DEPARTMENTS = [\n {\n id: '1',\n name: 'Marketing',\n },\n {\n id: '2',\n name: 'Sales',\n },\n {\n id: '3',\n name: 'Engineering',\n },\n {\n id: '4',\n name: 'Customer Support',\n },\n];\n\nexport const JOB_TITLES: Record<string, AutocompleteOption[]> = {\n Marketing: [\n {\n id: '1',\n name: 'Social Media Coordinator',\n },\n {\n id: '2',\n name: 'Blog Manager',\n },\n {\n id: '3',\n name: 'Events Manager',\n },\n ],\n Sales: [\n {\n id: '4',\n name: 'Business Development Representative',\n },\n {\n id: '5',\n name: 'Account Executive',\n },\n ],\n Engineering: [\n {\n id: '6',\n name: 'Software Engineer',\n },\n {\n id: '7',\n name: 'Senior Software Engineer',\n },\n {\n id: '8',\n name: 'Principal Software Engineer',\n },\n {\n id: '9',\n name: 'UX Designer',\n },\n {\n id: '10',\n name: 'Product Manager',\n },\n ],\n 'Customer Support': [\n {\n id: '11',\n name: 'Customer Support Representative',\n },\n {\n id: '12',\n name: 'Account Manager',\n },\n {\n id: '13',\n name: 'Customer Support Specialist',\n },\n ],\n};\n\nexport interface AgGridDemoRow {\n selected?: boolean;\n name: string;\n age: number;\n startDate: Date;\n endDate?: Date;\n department: AutocompleteOption;\n jobTitle?: AutocompleteOption;\n}\n\nexport const AG_GRID_DEMO_DATA = [\n {\n name: 'Billy Bob',\n age: 55,\n startDate: new Date('12/1/1994'),\n department: DEPARTMENTS[3],\n jobTitle: JOB_TITLES['Customer Support'][1],\n },\n {\n name: 'Jane Deere',\n age: 33,\n startDate: new Date('7/15/2009'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][2],\n },\n {\n name: 'John Doe',\n age: 38,\n startDate: new Date('9/1/2017'),\n endDate: new Date('9/30/2017'),\n department: DEPARTMENTS[1],\n jobTitle: JOB_TITLES['Sales'][1],\n },\n {\n name: 'David Smith',\n age: 51,\n startDate: new Date('1/1/2012'),\n endDate: new Date('6/15/2018'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][4],\n },\n {\n name: 'Emily Johnson',\n age: 41,\n startDate: new Date('1/15/2014'),\n department: DEPARTMENTS[0],\n jobTitle: JOB_TITLES['Marketing'][2],\n },\n {\n name: 'Nicole Davidson',\n age: 22,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][0],\n },\n {\n name: 'Carl Roberts',\n age: 23,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][3],\n },\n];\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n inject,\n} from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SkyIdModule } from '@skyux/core';\nimport {\n SkyDataManagerFilterData,\n SkyDataManagerFilterModalContext,\n} from '@skyux/data-manager';\nimport { SkyCheckboxModule } from '@skyux/forms';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\n\nimport { Filters } from './filters';\n\n@Component({\n selector: 'app-filter-modal',\n templateUrl: './filter-modal.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [FormsModule, SkyCheckboxModule, SkyIdModule, SkyModalModule],\n})\nexport class FilterModalComponent {\n protected hideSales = false;\n protected jobTitle = '';\n\n readonly #changeDetectorRef = inject(ChangeDetectorRef);\n readonly #context = inject(SkyDataManagerFilterModalContext);\n readonly #instance = inject(SkyModalInstance);\n\n constructor() {\n if (this.#context.filterData && this.#context.filterData.filters) {\n const filters = this.#context.filterData.filters as Filters;\n\n this.jobTitle = filters.jobTitle ?? 'any';\n this.hideSales = filters.hideSales ?? false;\n }\n\n this.#changeDetectorRef.markForCheck();\n }\n\n protected applyFilters(): void {\n const result: SkyDataManagerFilterData = {};\n\n result.filtersApplied = this.jobTitle !== 'any' || this.hideSales;\n result.filters = {\n jobTitle: this.jobTitle,\n hideSales: this.hideSales,\n } satisfies Filters;\n\n this.#changeDetectorRef.markForCheck();\n this.#instance.save(result);\n }\n\n protected clearAllFilters(): void {\n this.hideSales = false;\n this.jobTitle = 'any';\n this.#changeDetectorRef.markForCheck();\n }\n\n protected cancel(): void {\n this.#instance.cancel();\n }\n}\n","<sky-modal headingText=\"Filter employees\">\n <sky-modal-content>\n <label [for]=\"jobTitleInput.id\">Job Title</label>\n <select\n #jobTitleInput\n class=\"sky-form-control\"\n skyId=\"jobTitleInput\"\n [(ngModel)]=\"jobTitle\"\n >\n <option value=\"any\">Any job title</option>\n <option value=\"Product Manager\">Product Manager</option>\n <option value=\"Software Engineer\">Software Engineer</option>\n </select>\n <div class=\"sky-margin-stacked-lg\">\n <sky-checkbox labelText=\"Hide Sales employees\" [(ngModel)]=\"hideSales\" />\n </div>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-primary\"\n type=\"button\"\n (click)=\"applyFilters()\"\n >\n Apply filters\n </button>\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n (click)=\"clearAllFilters()\"\n >\n Clear all filters\n </button>\n <button class=\"sky-btn sky-btn-link\" type=\"button\" (click)=\"cancel()\">\n Cancel\n </button>\n </sky-modal-footer>\n</sky-modal>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\nimport { ICellRendererParams } from 'ag-grid-community';\n\nimport { AgGridDemoRow } from './data';\n\n@Component({\n selector: 'app-context-menu',\n templateUrl: './context-menu.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyDropdownModule],\n})\nexport class ContextMenuComponent implements ICellRendererAngularComp {\n public contextMenuAriaLabel = '';\n public deleteAriaLabel = '';\n public markInactiveAriaLabel = '';\n public moreInfoAriaLabel = '';\n\n #name: string | undefined;\n\n public agInit(params: ICellRendererParams<AgGridDemoRow>): void {\n this.#name = params.data?.name;\n this.contextMenuAriaLabel = `Context menu for ${this.#name}`;\n this.deleteAriaLabel = `Delete ${this.#name}`;\n this.markInactiveAriaLabel = `Mark ${this.#name} inactive`;\n this.moreInfoAriaLabel = `More info for ${this.#name}`;\n }\n\n public refresh(): boolean {\n return false;\n }\n\n protected actionClicked(action: string): void {\n alert(`${action} clicked for ${this.#name}`);\n }\n}\n","<sky-dropdown buttonType=\"context-menu\" [label]=\"contextMenuAriaLabel\">\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"deleteAriaLabel\"\n (click)=\"actionClicked('Delete')\"\n >\n Delete\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"markInactiveAriaLabel\"\n (click)=\"actionClicked('Mark inactive')\"\n >\n Mark inactive\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"moreInfoAriaLabel\"\n (click)=\"actionClicked('More info')\"\n >\n More info\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n</sky-dropdown>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnDestroy,\n OnInit,\n inject,\n} from '@angular/core';\nimport { SkyAgGridModule, SkyAgGridService, SkyCellType } from '@skyux/ag-grid';\nimport {\n SkyDataManagerColumnPickerOption,\n SkyDataManagerService,\n SkyDataManagerState,\n SkyDataViewConfig,\n SkyDataViewState,\n} from '@skyux/data-manager';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport {\n ColDef,\n GridApi,\n GridOptions,\n GridReadyEvent,\n RowSelectedEvent,\n ValueFormatterParams,\n} from 'ag-grid-community';\nimport { Subject, takeUntil } from 'rxjs';\n\nimport { ContextMenuComponent } from './context-menu.component';\nimport { AgGridDemoRow } from './data';\nimport { Filters } from './filters';\n\n@Component({\n selector: 'app-view-grid',\n templateUrl: './view-grid.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AgGridModule, SkyAgGridModule],\n})\nexport class ViewGridComponent implements OnInit, OnDestroy {\n @Input()\n public items: AgGridDemoRow[] = [];\n\n protected displayedItems: AgGridDemoRow[] = [];\n protected gridOptions!: GridOptions;\n protected isGridReadyForInitialization = false;\n protected isViewActive = false;\n protected noRowsTemplate = `<div class=\"sky-deemphasized\">No results found.</div>`;\n protected viewConfig: SkyDataViewConfig;\n\n #columnDefs: ColDef[] = [\n {\n colId: 'context',\n maxWidth: 50,\n sortable: false,\n cellRenderer: ContextMenuComponent,\n },\n {\n field: 'name',\n headerName: 'Name',\n },\n {\n field: 'age',\n headerName: 'Age',\n type: SkyCellType.Number,\n maxWidth: 60,\n },\n {\n field: 'startDate',\n headerName: 'Start date',\n type: SkyCellType.Date,\n sort: 'asc',\n },\n {\n field: 'endDate',\n headerName: 'End date',\n type: SkyCellType.Date,\n valueFormatter: (params: ValueFormatterParams<AgGridDemoRow, Date>) =>\n this.#endDateFormatter(params),\n },\n {\n field: 'department',\n headerName: 'Department',\n type: SkyCellType.Autocomplete,\n },\n {\n field: 'jobTitle',\n headerName: 'Title',\n type: SkyCellType.Autocomplete,\n },\n ];\n\n #columnPickerOptions: SkyDataManagerColumnPickerOption[] = [\n {\n id: 'context',\n label: '',\n alwaysDisplayed: true,\n },\n {\n id: 'name',\n label: 'Name',\n description: 'The name of the employee.',\n },\n {\n id: 'age',\n label: 'Age',\n description: 'The age of the employee.',\n },\n {\n id: 'startDate',\n label: 'Start date',\n description: 'The start date of the employee.',\n },\n {\n id: 'endDate',\n label: 'End date',\n description: 'The end date of the employee.',\n },\n {\n id: 'department',\n label: 'Department',\n description: 'The department of the employee',\n },\n {\n id: 'jobTitle',\n label: 'Title',\n description: 'The job title of the employee.',\n },\n ];\n\n #dataState = new SkyDataManagerState({});\n #gridApi: GridApi | undefined;\n #ngUnsubscribe = new Subject<void>();\n #viewId = 'dataGridWithDataManagerView';\n\n readonly #agGridSvc = inject(SkyAgGridService);\n readonly #changeDetectorRef = inject(ChangeDetectorRef);\n readonly #dataManagerSvc = inject(SkyDataManagerService);\n\n constructor() {\n this.viewConfig = {\n id: this.#viewId,\n name: 'Data Grid View',\n icon: 'table',\n searchEnabled: true,\n columnPickerEnabled: true,\n filterButtonEnabled: true,\n columnOptions: this.#columnPickerOptions,\n };\n }\n\n public ngOnInit(): void {\n this.displayedItems = this.items;\n\n this.#dataManagerSvc.initDataView(this.viewConfig);\n\n this.gridOptions = this.#agGridSvc.getGridOptions({\n gridOptions: {\n columnDefs: this.#columnDefs,\n onGridReady: this.onGridReady.bind(this),\n rowSelection: { mode: 'singleRow' },\n },\n });\n\n this.#dataManagerSvc\n .getDataStateUpdates(this.#viewId)\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((state) => {\n this.#dataState = state;\n this.#updateColumnOrder();\n this.isGridReadyForInitialization = true;\n this.#updateDisplayedItems();\n this.#changeDetectorRef.detectChanges();\n });\n\n this.#dataManagerSvc\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((id) => {\n this.isViewActive = id === this.#viewId;\n this.#changeDetectorRef.detectChanges();\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n public onGridReady(gridReadyEvent: GridReadyEvent): void {\n this.#gridApi = gridReadyEvent.api;\n this.#updateDisplayedItems();\n }\n\n protected onRowSelected(\n rowSelectedEvent: RowSelectedEvent<AgGridDemoRow>,\n ): void {\n if (!rowSelectedEvent.data?.selected) {\n this.#updateDisplayedItems();\n }\n }\n\n #searchItems(items: AgGridDemoRow[]): AgGridDemoRow[] {\n let searchedItems = items;\n const searchText = this.#dataState && this.#dataState.searchText;\n\n if (searchText) {\n searchedItems = items.filter((item: AgGridDemoRow) => {\n let property: keyof typeof item;\n\n for (property in item) {\n if (\n Object.prototype.hasOwnProperty.call(item, property) &&\n property === 'name'\n ) {\n const propertyText = item[property].toLowerCase();\n\n if (propertyText.includes(searchText)) {\n return true;\n }\n }\n }\n\n return false;\n });\n }\n\n return searchedItems;\n }\n\n #filterItems(items: AgGridDemoRow[]): AgGridDemoRow[] {\n let filteredItems = items;\n const filterData = this.#dataState && this.#dataState.filterData;\n\n if (filterData?.filters) {\n const filters = filterData.filters as Filters;\n\n filteredItems = items.filter((item: AgGridDemoRow) => {\n return (\n (!!(filters.hideSales && item.department.name !== 'Sales') ||\n !filters.hideSales) &&\n ((filters.jobTitle !== 'any' &&\n item.jobTitle?.name === filters.jobTitle) ||\n !filters.jobTitle ||\n filters.jobTitle === 'any')\n );\n });\n }\n\n return filteredItems;\n }\n\n #endDateFormatter(params: ValueFormatterParams<AgGridDemoRow, Date>): string {\n return params.value\n ? params.value.toLocaleDateString('en-us', {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n })\n : 'N/A';\n }\n\n #updateColumnOrder(): void {\n const viewState: SkyDataViewState | undefined =\n this.#dataState.getViewStateById(this.#viewId);\n\n if (viewState) {\n this.#columnDefs.sort((columnDefinition1, columnDefinition2) => {\n const displayedColumnIdIndex1: number =\n viewState.displayedColumnIds.findIndex(\n (aDisplayedColumnId: string) =>\n aDisplayedColumnId === columnDefinition1.field,\n );\n\n const displayedColumnIdIndex2: number =\n viewState.displayedColumnIds.findIndex(\n (aDisplayedColumnId: string) =>\n aDisplayedColumnId === columnDefinition2.field,\n );\n\n if (displayedColumnIdIndex1 === -1) {\n return 0;\n } else if (displayedColumnIdIndex2 === -1) {\n return 0;\n } else {\n return displayedColumnIdIndex1 - displayedColumnIdIndex2;\n }\n });\n\n this.#changeDetectorRef.markForCheck();\n }\n }\n\n #updateDisplayedItems(): void {\n this.displayedItems = this.#filterItems(this.#searchItems(this.items));\n\n if (this.#dataState.onlyShowSelected) {\n this.displayedItems = this.displayedItems.filter((item) => item.selected);\n }\n\n if (this.displayedItems.length > 0) {\n this.#gridApi?.hideOverlay();\n } else {\n this.#gridApi?.showNoRowsOverlay();\n }\n\n this.#dataManagerSvc.updateDataSummary(\n {\n totalItems: this.items.length,\n itemsMatching: this.displayedItems.length,\n },\n this.#viewId,\n );\n }\n}\n","<sky-data-view skyAgGridDataManagerAdapter [viewId]=\"viewConfig.id\">\n @if (isViewActive && isGridReadyForInitialization) {\n <sky-ag-grid-wrapper>\n <ag-grid-angular\n [gridOptions]=\"gridOptions\"\n [rowData]=\"displayedItems\"\n [overlayNoRowsTemplate]=\"noRowsTemplate\"\n (rowSelected)=\"onRowSelected($event)\"\n />\n </sky-ag-grid-wrapper>\n }\n</sky-data-view>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n OnDestroy,\n OnInit,\n inject,\n} from '@angular/core';\nimport {\n SkyDataManagerModule,\n SkyDataManagerService,\n SkyDataManagerState,\n} from '@skyux/data-manager';\n\nimport { Subject, takeUntil } from 'rxjs';\n\nimport { AG_GRID_DEMO_DATA } from './data';\nimport { FilterModalComponent } from './filter-modal.component';\nimport { Filters } from './filters';\nimport { ViewGridComponent } from './view-grid.component';\n\n@Component({\n selector: 'app-ag-grid-data-grid-data-manager-example',\n templateUrl: './example.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [SkyDataManagerService],\n imports: [SkyDataManagerModule, ViewGridComponent],\n})\nexport class AgGridDataGridDataManagerExampleComponent\n implements OnInit, OnDestroy\n{\n protected items = AG_GRID_DEMO_DATA;\n\n #activeViewId = 'dataGridWithDataManagerView';\n\n #dataManagerConfig = {\n filterModalComponent: FilterModalComponent,\n sortOptions: [\n {\n id: 'az',\n label: 'Name (A - Z)',\n descending: false,\n propertyName: 'name',\n },\n {\n id: 'za',\n label: 'Name (Z - A)',\n descending: true,\n propertyName: 'name',\n },\n ],\n };\n\n #defaultDataState = new SkyDataManagerState({\n filterData: {\n filtersApplied: false,\n filters: {\n hideSales: false,\n jobTitle: 'any',\n } satisfies Filters,\n },\n views: [\n {\n viewId: 'dataGridWithDataManagerView',\n displayedColumnIds: [\n 'context',\n 'name',\n 'age',\n 'startDate',\n 'endDate',\n 'department',\n 'jobTitle',\n ],\n },\n ],\n });\n\n #ngUnsubscribe = new Subject<void>();\n\n readonly #changeDetectorRef = inject(ChangeDetectorRef);\n readonly #dataManagerSvc = inject(SkyDataManagerService);\n\n constructor() {\n this.#dataManagerSvc\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((activeViewId) => {\n this.#activeViewId = activeViewId;\n this.#changeDetectorRef.detectChanges();\n });\n }\n\n public ngOnInit(): void {\n this.#dataManagerSvc.initDataManager({\n activeViewId: this.#activeViewId,\n dataManagerConfig: this.#dataManagerConfig,\n defaultDataState: this.#defaultDataState,\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n}\n","<sky-data-manager>\n <sky-data-manager-toolbar />\n <app-view-grid [items]=\"items\" />\n</sky-data-manager>\n","export interface AutocompleteOption {\n id: string;\n name: string;\n}\n\nexport const DEPARTMENTS = [\n {\n id: '1',\n name: 'Marketing',\n },\n {\n id: '2',\n name: 'Sales',\n },\n {\n id: '3',\n name: 'Engineering',\n },\n {\n id: '4',\n name: 'Customer Support',\n },\n];\n\nexport const JOB_TITLES: Record<string, AutocompleteOption[]> = {\n Marketing: [\n {\n id: '1',\n name: 'Social Media Coordinator',\n },\n {\n id: '2',\n name: 'Blog Manager',\n },\n {\n id: '3',\n name: 'Events Manager',\n },\n ],\n Sales: [\n {\n id: '4',\n name: 'Business Development Representative',\n },\n {\n id: '5',\n name: 'Account Executive',\n },\n ],\n Engineering: [\n {\n id: '6',\n name: 'Software Engineer',\n },\n {\n id: '7',\n name: 'Senior Software Engineer',\n },\n {\n id: '8',\n name: 'Principal Software Engineer',\n },\n {\n id: '9',\n name: 'UX Designer',\n },\n {\n id: '10',\n name: 'Product Manager',\n },\n ],\n 'Customer Support': [\n {\n id: '11',\n name: 'Customer Support Representative',\n },\n {\n id: '12',\n name: 'Account Manager',\n },\n {\n id: '13',\n name: 'Customer Support Specialist',\n },\n ],\n};\n\nexport interface AgGridDemoRow {\n selected?: boolean;\n name: string;\n age: number;\n startDate: Date;\n endDate?: Date;\n department: AutocompleteOption;\n jobTitle?: AutocompleteOption;\n}\n\nexport const AG_GRID_DEMO_DATA = [\n {\n selected: false,\n name: 'Billy Bob',\n age: 55,\n startDate: new Date('12/1/1994'),\n department: DEPARTMENTS[3],\n jobTitle: JOB_TITLES['Customer Support'][1],\n },\n {\n selected: false,\n name: 'Jane Deere',\n age: 33,\n startDate: new Date('7/15/2009'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][2],\n },\n {\n selected: false,\n name: 'John Doe',\n age: 38,\n startDate: new Date('9/1/2017'),\n endDate: new Date('9/30/2017'),\n department: DEPARTMENTS[1],\n jobTitle: JOB_TITLES['Sales'][1],\n },\n {\n selected: false,\n name: 'David Smith',\n age: 51,\n startDate: new Date('1/1/2012'),\n endDate: new Date('6/15/2018'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][4],\n },\n {\n selected: true,\n name: 'Emily Johnson',\n age: 41,\n startDate: new Date('1/15/2014'),\n department: DEPARTMENTS[0],\n jobTitle: JOB_TITLES['Marketing'][2],\n },\n {\n selected: false,\n name: 'Nicole Davidson',\n age: 22,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][0],\n },\n {\n selected: false,\n name: 'Carl Roberts',\n age: 23,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][3],\n },\n];\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n inject,\n} from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SkyIdModule } from '@skyux/core';\nimport {\n SkyDataManagerFilterData,\n SkyDataManagerFilterModalContext,\n} from '@skyux/data-manager';\nimport { SkyCheckboxModule } from '@skyux/forms';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\n\nimport { Filters } from './filters';\n\n@Component({\n selector: 'app-filter-modal',\n templateUrl: './filter-modal.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [FormsModule, SkyCheckboxModule, SkyIdModule, SkyModalModule],\n})\nexport class FilterModalComponent {\n protected hideSales = false;\n protected jobTitle = '';\n\n readonly #changeDetectorRef = inject(ChangeDetectorRef);\n readonly #context = inject(SkyDataManagerFilterModalContext);\n readonly #instance = inject(SkyModalInstance);\n\n constructor() {\n if (this.#context.filterData && this.#context.filterData.filters) {\n const filters = this.#context.filterData.filters as Filters;\n\n this.jobTitle = filters.jobTitle ?? 'any';\n this.hideSales = filters.hideSales ?? false;\n }\n\n this.#changeDetectorRef.markForCheck();\n }\n\n protected applyFilters(): void {\n const result: SkyDataManagerFilterData = {};\n\n result.filtersApplied = this.jobTitle !== 'any' || this.hideSales;\n result.filters = {\n jobTitle: this.jobTitle,\n hideSales: this.hideSales,\n } satisfies Filters;\n\n this.#changeDetectorRef.markForCheck();\n this.#instance.save(result);\n }\n\n protected clearAllFilters(): void {\n this.hideSales = false;\n this.jobTitle = 'any';\n this.#changeDetectorRef.markForCheck();\n }\n\n protected cancel(): void {\n this.#instance.cancel();\n }\n}\n","<sky-modal headingText=\"Filter employees\">\n <sky-modal-content>\n <label [for]=\"jobTitleInput.id\">Job Title</label>\n <select\n #jobTitleInput\n class=\"sky-form-control\"\n skyId=\"jobTitleInput\"\n [(ngModel)]=\"jobTitle\"\n >\n <option value=\"any\">Any job title</option>\n <option value=\"Product Manager\">Product Manager</option>\n <option value=\"Software Engineer\">Software Engineer</option>\n </select>\n <div class=\"sky-margin-stacked-lg\">\n <sky-checkbox labelText=\"Hide Sales employees\" [(ngModel)]=\"hideSales\" />\n </div>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-primary\"\n type=\"button\"\n (click)=\"applyFilters()\"\n >\n Apply filters\n </button>\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n (click)=\"clearAllFilters()\"\n >\n Clear all filters\n </button>\n <button class=\"sky-btn sky-btn-link\" type=\"button\" (click)=\"cancel()\">\n Cancel\n </button>\n </sky-modal-footer>\n</sky-modal>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\nimport { ICellRendererParams } from 'ag-grid-community';\n\nimport { AgGridDemoRow } from './data';\n\n@Component({\n selector: 'app-context-menu',\n templateUrl: './context-menu.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyDropdownModule],\n})\nexport class ContextMenuComponent implements ICellRendererAngularComp {\n public contextMenuAriaLabel = '';\n public deleteAriaLabel = '';\n public markInactiveAriaLabel = '';\n public moreInfoAriaLabel = '';\n\n #name: string | undefined;\n\n public agInit(params: ICellRendererParams<AgGridDemoRow>): void {\n this.#name = params.data?.name;\n this.contextMenuAriaLabel = `Context menu for ${this.#name}`;\n this.deleteAriaLabel = `Delete ${this.#name}`;\n this.markInactiveAriaLabel = `Mark ${this.#name} inactive`;\n this.moreInfoAriaLabel = `More info for ${this.#name}`;\n }\n\n public refresh(): boolean {\n return false;\n }\n\n protected actionClicked(action: string): void {\n alert(`${action} clicked for ${this.#name}`);\n }\n}\n","<sky-dropdown buttonType=\"context-menu\" [label]=\"contextMenuAriaLabel\">\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"deleteAriaLabel\"\n (click)=\"actionClicked('Delete')\"\n >\n Delete\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"markInactiveAriaLabel\"\n (click)=\"actionClicked('Mark inactive')\"\n >\n Mark inactive\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"moreInfoAriaLabel\"\n (click)=\"actionClicked('More info')\"\n >\n More info\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n</sky-dropdown>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnDestroy,\n OnInit,\n inject,\n} from '@angular/core';\nimport { SkyAgGridModule, SkyAgGridService, SkyCellType } from '@skyux/ag-grid';\nimport {\n SkyDataManagerColumnPickerOption,\n SkyDataManagerService,\n SkyDataManagerState,\n SkyDataViewConfig,\n SkyDataViewState,\n} from '@skyux/data-manager';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport {\n ColDef,\n GridApi,\n GridOptions,\n GridReadyEvent,\n RowSelectedEvent,\n ValueFormatterParams,\n} from 'ag-grid-community';\nimport { Subject, of, takeUntil } from 'rxjs';\n\nimport { ContextMenuComponent } from './context-menu.component';\nimport { AgGridDemoRow } from './data';\nimport { Filters } from './filters';\n\n@Component({\n selector: 'app-view-grid',\n templateUrl: './view-grid.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AgGridModule, SkyAgGridModule],\n})\nexport class ViewGridComponent implements OnInit, OnDestroy {\n @Input()\n public items: AgGridDemoRow[] = [];\n\n protected displayedItems: AgGridDemoRow[] = [];\n protected gridOptions!: GridOptions;\n protected isGridReadyForInitialization = false;\n protected isViewActive = false;\n protected noRowsTemplate = `<div class=\"sky-deemphasized\">No results found.</div>`;\n protected viewConfig: SkyDataViewConfig;\n\n #columnDefs: ColDef[] = [\n {\n field: 'selected',\n type: SkyCellType.RowSelector,\n cellRendererParams: {\n // Could be a SkyAppResourcesService.getString call that returns an observable.\n label: (data: AgGridDemoRow) => of(`Select ${data.name}`),\n },\n },\n {\n colId: 'context',\n maxWidth: 50,\n sortable: false,\n cellRenderer: ContextMenuComponent,\n },\n {\n field: 'name',\n headerName: 'Name',\n },\n {\n field: 'age',\n headerName: 'Age',\n type: SkyCellType.Number,\n maxWidth: 60,\n },\n {\n field: 'startDate',\n headerName: 'Start date',\n type: SkyCellType.Date,\n sort: 'asc',\n },\n {\n field: 'endDate',\n headerName: 'End date',\n type: SkyCellType.Date,\n valueFormatter: (params: ValueFormatterParams<AgGridDemoRow, Date>) =>\n this.#endDateFormatter(params),\n },\n {\n field: 'department',\n headerName: 'Department',\n type: SkyCellType.Autocomplete,\n },\n {\n field: 'jobTitle',\n headerName: 'Title',\n type: SkyCellType.Autocomplete,\n },\n ];\n\n #columnPickerOptions: SkyDataManagerColumnPickerOption[] = [\n {\n id: 'selected',\n label: '',\n alwaysDisplayed: true,\n },\n {\n id: 'context',\n label: '',\n alwaysDisplayed: true,\n },\n {\n id: 'name',\n label: 'Name',\n description: 'The name of the employee.',\n },\n {\n id: 'age',\n label: 'Age',\n description: 'The age of the employee.',\n },\n {\n id: 'startDate',\n label: 'Start date',\n description: 'The start date of the employee.',\n },\n {\n id: 'endDate',\n label: 'End date',\n description: 'The end date of the employee.',\n },\n {\n id: 'department',\n label: 'Department',\n description: 'The department of the employee',\n },\n {\n id: 'jobTitle',\n label: 'Title',\n description: 'The job title of the employee.',\n },\n ];\n\n #dataState = new SkyDataManagerState({});\n #gridApi?: GridApi;\n #ngUnsubscribe = new Subject<void>();\n #viewId = 'dataGridMultiselectWithDataManagerView';\n\n readonly #agGridSvc = inject(SkyAgGridService);\n readonly #changeDetectorRef = inject(ChangeDetectorRef);\n readonly #dataManagerSvc = inject(SkyDataManagerService);\n\n constructor() {\n this.viewConfig = {\n id: this.#viewId,\n name: 'Data Grid View',\n icon: 'table',\n searchEnabled: true,\n multiselectToolbarEnabled: true,\n columnPickerEnabled: true,\n filterButtonEnabled: true,\n columnOptions: this.#columnPickerOptions,\n };\n }\n\n public ngOnInit(): void {\n this.displayedItems = this.items;\n\n this.#dataManagerSvc.initDataView(this.viewConfig);\n\n this.gridOptions = this.#agGridSvc.getGridOptions({\n gridOptions: {\n columnDefs: this.#columnDefs,\n onGridReady: this.onGridReady.bind(this),\n },\n });\n\n this.#dataManagerSvc\n .getDataStateUpdates(this.#viewId)\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((state) => {\n this.#dataState = state;\n this.#updateColumnOrder();\n this.isGridReadyForInitialization = true;\n this.#updateDisplayedItems();\n this.#changeDetectorRef.detectChanges();\n });\n\n this.#dataManagerSvc\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((id) => {\n this.isViewActive = id === this.#viewId;\n this.#changeDetectorRef.detectChanges();\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n public onGridReady(gridReadyEvent: GridReadyEvent): void {\n this.#gridApi = gridReadyEvent.api;\n this.#updateDisplayedItems();\n }\n\n protected onRowSelected(\n rowSelectedEvent: RowSelectedEvent<AgGridDemoRow>,\n ): void {\n if (!rowSelectedEvent.data?.selected) {\n this.#updateDisplayedItems();\n }\n }\n\n #searchItems(items: AgGridDemoRow[]): AgGridDemoRow[] {\n let searchedItems = items;\n const searchText = this.#dataState && this.#dataState.searchText;\n\n if (searchText) {\n searchedItems = items.filter((item) => {\n let property: keyof typeof item;\n\n for (property in item) {\n if (\n Object.prototype.hasOwnProperty.call(item, property) &&\n property === 'name'\n ) {\n const propertyText = item[property].toLowerCase();\n if (propertyText.includes(searchText)) {\n return true;\n }\n }\n }\n\n return false;\n });\n }\n\n return searchedItems;\n }\n\n #filterItems(items: AgGridDemoRow[]): AgGridDemoRow[] {\n let filteredItems = items;\n const filterData = this.#dataState && this.#dataState.filterData;\n\n if (filterData?.filters) {\n const filters = filterData.filters as Filters;\n\n filteredItems = items.filter((item) => {\n return (\n (!!(filters.hideSales && item.department.name !== 'Sales') ||\n !filters.hideSales) &&\n ((filters.jobTitle !== 'any' &&\n item.jobTitle?.name === filters.jobTitle) ||\n !filters.jobTitle ||\n filters.jobTitle === 'any')\n );\n });\n }\n\n return filteredItems;\n }\n\n #endDateFormatter(params: ValueFormatterParams<AgGridDemoRow, Date>): string {\n return params.value\n ? params.value.toLocaleDateString('en-us', {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n })\n : 'N/A';\n }\n\n #updateColumnOrder(): void {\n const viewState: SkyDataViewState | undefined =\n this.#dataState.getViewStateById(this.#viewId);\n\n if (viewState) {\n this.#columnDefs.sort((columnDefinition1, columnDefinition2) => {\n const displayedColumnIdIndex1: number =\n viewState.displayedColumnIds.findIndex(\n (aDisplayedColumnId: string) =>\n aDisplayedColumnId === columnDefinition1.field,\n );\n\n const displayedColumnIdIndex2: number =\n viewState.displayedColumnIds.findIndex(\n (aDisplayedColumnId: string) =>\n aDisplayedColumnId === columnDefinition2.field,\n );\n\n if (displayedColumnIdIndex1 === -1) {\n return 0;\n } else if (displayedColumnIdIndex2 === -1) {\n return 0;\n } else {\n return displayedColumnIdIndex1 - displayedColumnIdIndex2;\n }\n });\n\n this.#changeDetectorRef.markForCheck();\n }\n }\n\n #updateDisplayedItems(): void {\n const sortOption = this.#dataState.activeSortOption;\n\n if (this.#gridApi && sortOption) {\n this.#gridApi.applyColumnState({\n state: [\n {\n colId: sortOption.propertyName,\n sort: sortOption.descending ? 'desc' : 'asc',\n },\n ],\n });\n }\n\n this.displayedItems = this.#filterItems(this.#searchItems(this.items));\n\n if (this.#dataState.onlyShowSelected) {\n this.displayedItems = this.displayedItems.filter((item) => item.selected);\n }\n\n if (this.displayedItems.length > 0) {\n this.#gridApi?.hideOverlay();\n } else {\n this.#gridApi?.showNoRowsOverlay();\n }\n\n this.#dataManagerSvc.updateDataSummary(\n {\n totalItems: this.items.length,\n itemsMatching: this.displayedItems.length,\n },\n this.#viewId,\n );\n }\n}\n","<sky-data-view skyAgGridDataManagerAdapter [viewId]=\"viewConfig.id\">\n @if (isViewActive && isGridReadyForInitialization) {\n <sky-ag-grid-wrapper>\n <ag-grid-angular\n [gridOptions]=\"gridOptions\"\n [rowData]=\"displayedItems\"\n [overlayNoRowsTemplate]=\"noRowsTemplate\"\n (rowSelected)=\"onRowSelected($event)\"\n />\n </sky-ag-grid-wrapper>\n }\n</sky-data-view>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n OnDestroy,\n OnInit,\n inject,\n} from '@angular/core';\nimport {\n SkyDataManagerConfig,\n SkyDataManagerModule,\n SkyDataManagerService,\n SkyDataManagerState,\n} from '@skyux/data-manager';\n\nimport { Subject, takeUntil } from 'rxjs';\n\nimport { AG_GRID_DEMO_DATA } from './data';\nimport { FilterModalComponent } from './filter-modal.component';\nimport { Filters } from './filters';\nimport { ViewGridComponent } from './view-grid.component';\n\n@Component({\n selector: 'app-ag-grid-data-grid-data-manager-multiselect-example',\n templateUrl: './example.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [SkyDataManagerService],\n imports: [SkyDataManagerModule, ViewGridComponent],\n})\nexport class AgGridDataGridDataManagerMultiselectExampleComponent\n implements OnInit, OnDestroy\n{\n protected items = AG_GRID_DEMO_DATA;\n\n #dataManagerConfig: SkyDataManagerConfig = {\n filterModalComponent: FilterModalComponent,\n sortOptions: [\n {\n id: 'az',\n label: 'Name (A - Z)',\n descending: false,\n propertyName: 'name',\n },\n {\n id: 'za',\n label: 'Name (Z - A)',\n descending: true,\n propertyName: 'name',\n },\n ],\n };\n\n #defaultDataState = new SkyDataManagerState({\n filterData: {\n filtersApplied: false,\n filters: {\n hideSales: false,\n jobTitle: 'any',\n } satisfies Filters,\n },\n views: [\n {\n viewId: 'dataGridMultiselectWithDataManagerView',\n displayedColumnIds: [\n 'selected',\n 'context',\n 'name',\n 'age',\n 'startDate',\n 'endDate',\n 'department',\n 'jobTitle',\n ],\n },\n ],\n });\n\n #activeViewId = 'dataGridMultiselectWithDataManagerView';\n #ngUnsubscribe = new Subject<void>();\n\n readonly #changeDetectorRef = inject(ChangeDetectorRef);\n readonly #dataManagerSvc = inject(SkyDataManagerService);\n\n constructor() {\n this.#dataManagerSvc\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((activeViewId) => {\n this.#activeViewId = activeViewId;\n this.#changeDetectorRef.detectChanges();\n });\n }\n\n public ngOnInit(): void {\n this.#dataManagerSvc.initDataManager({\n activeViewId: this.#activeViewId,\n dataManagerConfig: this.#dataManagerConfig,\n defaultDataState: this.#defaultDataState,\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n}\n","<sky-data-manager>\n <sky-data-manager-toolbar />\n <app-view-grid [items]=\"items\" />\n</sky-data-manager>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\nimport { ICellRendererParams } from 'ag-grid-community';\n\nimport { AgGridDemoRow } from './data';\n\n@Component({\n selector: 'app-context-menu',\n templateUrl: './context-menu.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyDropdownModule],\n})\nexport class ContextMenuComponent implements ICellRendererAngularComp {\n public contextMenuAriaLabel = '';\n public deleteAriaLabel = '';\n public markInactiveAriaLabel = '';\n public moreInfoAriaLabel = '';\n\n #name: string | undefined;\n\n public agInit(params: ICellRendererParams<AgGridDemoRow>): void {\n this.#name = params.data?.name;\n this.contextMenuAriaLabel = `Context menu for ${this.#name}`;\n this.deleteAriaLabel = `Delete ${this.#name}`;\n this.markInactiveAriaLabel = `Mark ${this.#name} inactive`;\n this.moreInfoAriaLabel = `More info for ${this.#name}`;\n }\n\n public refresh(): boolean {\n return false;\n }\n\n protected actionClicked(action: string): void {\n alert(`${action} clicked for ${this.#name}`);\n }\n}\n","<sky-dropdown buttonType=\"context-menu\" [label]=\"contextMenuAriaLabel\">\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"deleteAriaLabel\"\n (click)=\"actionClicked('Delete')\"\n >\n Delete\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"markInactiveAriaLabel\"\n (click)=\"actionClicked('Mark inactive')\"\n >\n Mark inactive\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"moreInfoAriaLabel\"\n (click)=\"actionClicked('More info')\"\n >\n More info\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n</sky-dropdown>\n","export interface AutocompleteOption {\n id: string;\n name: string;\n}\n\nexport const DEPARTMENTS = [\n {\n id: '1',\n name: 'Marketing',\n },\n {\n id: '2',\n name: 'Sales',\n },\n {\n id: '3',\n name: 'Engineering',\n },\n {\n id: '4',\n name: 'Customer Support',\n },\n];\n\nexport const JOB_TITLES: Record<string, AutocompleteOption[]> = {\n Marketing: [\n {\n id: '1',\n name: 'Social Media Coordinator',\n },\n {\n id: '2',\n name: 'Blog Manager',\n },\n {\n id: '3',\n name: 'Events Manager',\n },\n ],\n Sales: [\n {\n id: '4',\n name: 'Business Development Representative',\n },\n {\n id: '5',\n name: 'Account Executive',\n },\n ],\n Engineering: [\n {\n id: '6',\n name: 'Software Engineer',\n },\n {\n id: '7',\n name: 'Senior Software Engineer',\n },\n {\n id: '8',\n name: 'Principal Software Engineer',\n },\n {\n id: '9',\n name: 'UX Designer',\n },\n {\n id: '10',\n name: 'Product Manager',\n },\n ],\n 'Customer Support': [\n {\n id: '11',\n name: 'Customer Support Representative',\n },\n {\n id: '12',\n name: 'Account Manager',\n },\n {\n id: '13',\n name: 'Customer Support Specialist',\n },\n ],\n};\n\nexport interface AgGridDemoRow {\n selected?: boolean;\n name: string;\n age: number;\n startDate: Date;\n endDate?: Date;\n department: AutocompleteOption;\n jobTitle?: AutocompleteOption;\n}\n\nexport const AG_GRID_DEMO_DATA = [\n {\n name: 'Billy Bob',\n age: 55,\n startDate: new Date('12/1/1994'),\n department: DEPARTMENTS[3],\n jobTitle: JOB_TITLES['Customer Support'][1],\n },\n {\n name: 'Jane Deere',\n age: 33,\n startDate: new Date('7/15/2009'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][2],\n },\n {\n name: 'John Doe',\n age: 38,\n startDate: new Date('9/1/2017'),\n endDate: new Date('9/30/2017'),\n department: DEPARTMENTS[1],\n },\n {\n name: 'David Smith',\n age: 51,\n startDate: new Date('1/1/2012'),\n endDate: new Date('6/15/2018'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][4],\n },\n {\n name: 'Emily Johnson',\n age: 41,\n startDate: new Date('1/15/2014'),\n department: DEPARTMENTS[0],\n jobTitle: JOB_TITLES['Marketing'][2],\n },\n {\n name: 'Nicole Davidson',\n age: 22,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][0],\n },\n {\n name: 'Carl Roberts',\n age: 23,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][3],\n },\n];\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { SkyAgGridHeaderInfo } from '@skyux/ag-grid';\nimport { SkyHelpInlineModule } from '@skyux/help-inline';\n\n@Component({\n selector: 'app-inline-help',\n templateUrl: './inline-help.component.html',\n styles: [\n `\n :host {\n display: block;\n }\n `,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyHelpInlineModule],\n})\nexport class InlineHelpComponent {\n protected displayName: string | undefined;\n readonly #headerInfo = inject(SkyAgGridHeaderInfo);\n\n constructor() {\n this.displayName = this.#headerInfo.displayName;\n }\n\n protected onHelpClick(): void {\n alert(`Help was clicked for ${this.displayName}.`);\n }\n}\n","<sky-help-inline\n class=\"sky-control-help\"\n ariaLabel=\"Information about {{ displayName }}\"\n (actionClick)=\"onHelpClick()\"\n/>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n inject,\n} from '@angular/core';\nimport { SkyAgGridModule, SkyAgGridService, SkyCellType } from '@skyux/ag-grid';\nimport { SkyDataManagerService } from '@skyux/data-manager';\nimport { SkyToolbarModule } from '@skyux/layout';\nimport { SkySearchModule } from '@skyux/lookup';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport {\n ColDef,\n GridApi,\n GridOptions,\n GridReadyEvent,\n ValueFormatterParams,\n} from 'ag-grid-community';\nimport { of } from 'rxjs';\n\nimport { ContextMenuComponent } from './context-menu.component';\nimport { AG_GRID_DEMO_DATA, AgGridDemoRow } from './data';\nimport { InlineHelpComponent } from './inline-help.component';\n\n@Component({\n selector: 'app-ag-grid-data-grid-inline-help-example',\n templateUrl: './example.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [SkyDataManagerService],\n imports: [AgGridModule, SkyAgGridModule, SkySearchModule, SkyToolbarModule],\n})\nexport class AgGridDataGridInlineHelpExampleComponent {\n protected gridData = AG_GRID_DEMO_DATA;\n protected gridOptions: GridOptions;\n protected searchText = '';\n protected noRowsTemplate: string;\n\n #columnDefs: ColDef[] = [\n {\n field: 'selected',\n type: SkyCellType.RowSelector,\n cellRendererParams: {\n // Could be a SkyAppResourcesService.getString call that returns an observable.\n label: (data: AgGridDemoRow) => of(`Select ${data.name}`),\n },\n },\n {\n colId: 'context',\n maxWidth: 50,\n sortable: false,\n cellRenderer: ContextMenuComponent,\n },\n {\n field: 'name',\n headerName: 'Name',\n headerComponentParams: {\n inlineHelpComponent: InlineHelpComponent,\n },\n },\n {\n field: 'age',\n headerName: 'Age',\n type: SkyCellType.Number,\n maxWidth: 60,\n headerComponentParams: {\n inlineHelpComponent: InlineHelpComponent,\n },\n },\n {\n field: 'startDate',\n headerName: 'Start date',\n type: SkyCellType.Date,\n sort: 'asc',\n headerComponentParams: {\n inlineHelpComponent: InlineHelpComponent,\n },\n },\n {\n field: 'endDate',\n headerName: 'End date',\n type: SkyCellType.Date,\n valueFormatter: (params: ValueFormatterParams<AgGridDemoRow, Date>) =>\n this.#endDateFormatter(params),\n headerComponentParams: {\n inlineHelpComponent: InlineHelpComponent,\n },\n },\n {\n field: 'department',\n headerName: 'Department',\n type: SkyCellType.Autocomplete,\n headerComponentParams: {\n inlineHelpComponent: InlineHelpComponent,\n },\n },\n {\n field: 'jobTitle',\n headerName: 'Title',\n type: SkyCellType.Autocomplete,\n headerComponentParams: {\n inlineHelpComponent: InlineHelpComponent,\n },\n },\n ];\n\n #gridApi: GridApi | undefined;\n\n readonly #agGridSvc = inject(SkyAgGridService);\n readonly #changeDetectorRef = inject(ChangeDetectorRef);\n\n constructor() {\n this.noRowsTemplate = `<div class=\"sky-font-deemphasized\">No results found.</div>`;\n\n this.gridOptions = this.#agGridSvc.getGridOptions({\n gridOptions: {\n columnDefs: this.#columnDefs,\n onGridReady: this.onGridReady.bind(this),\n },\n });\n\n this.#changeDetectorRef.markForCheck();\n }\n\n public onGridReady(gridReadyEvent: GridReadyEvent): void {\n this.#gridApi = gridReadyEvent.api;\n this.#changeDetectorRef.markForCheck();\n }\n\n protected searchApplied(searchText: string | void): void {\n if (searchText) {\n this.searchText = searchText;\n } else {\n this.searchText = '';\n }\n if (this.#gridApi) {\n this.#gridApi.updateGridOptions({ quickFilterText: this.searchText });\n const displayedRowCount = this.#gridApi.getDisplayedRowCount();\n\n if (displayedRowCount > 0) {\n this.#gridApi.hideOverlay();\n } else {\n this.#gridApi.showNoRowsOverlay();\n }\n }\n }\n\n #endDateFormatter(params: ValueFormatterParams<AgGridDemoRow, Date>): string {\n return params.value\n ? params.value.toLocaleDateString('en-us', {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n })\n : 'N/A';\n }\n}\n","<sky-toolbar>\n <sky-toolbar-item>\n <sky-search\n [debounceTime]=\"250\"\n [searchText]=\"searchText\"\n (searchApply)=\"searchApplied($event)\"\n (searchChange)=\"searchApplied($event)\"\n (searchClear)=\"searchApplied($event)\"\n />\n </sky-toolbar-item>\n</sky-toolbar>\n\n<sky-ag-grid-wrapper>\n <ag-grid-angular\n [gridOptions]=\"gridOptions\"\n [overlayNoRowsTemplate]=\"noRowsTemplate\"\n [rowData]=\"gridData\"\n />\n</sky-ag-grid-wrapper>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\nimport { ICellRendererParams } from 'ag-grid-community';\n\nimport { AgGridDemoRow } from './data';\n\n@Component({\n selector: 'app-context-menu',\n templateUrl: './context-menu.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyDropdownModule],\n})\nexport class ContextMenuComponent implements ICellRendererAngularComp {\n public contextMenuAriaLabel = '';\n public deleteAriaLabel = '';\n public markInactiveAriaLabel = '';\n public moreInfoAriaLabel = '';\n\n #name: string | undefined;\n\n public agInit(params: ICellRendererParams<AgGridDemoRow>): void {\n this.#name = params.data?.name;\n this.contextMenuAriaLabel = `Context menu for ${this.#name}`;\n this.deleteAriaLabel = `Delete ${this.#name}`;\n this.markInactiveAriaLabel = `Mark ${this.#name} inactive`;\n this.moreInfoAriaLabel = `More info for ${this.#name}`;\n }\n\n public refresh(): boolean {\n return false;\n }\n\n protected actionClicked(action: string): void {\n alert(`${action} clicked for ${this.#name}`);\n }\n}\n","<sky-dropdown buttonType=\"context-menu\" [label]=\"contextMenuAriaLabel\">\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"deleteAriaLabel\"\n (click)=\"actionClicked('Delete')\"\n >\n Delete\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"markInactiveAriaLabel\"\n (click)=\"actionClicked('Mark inactive')\"\n >\n Mark inactive\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"moreInfoAriaLabel\"\n (click)=\"actionClicked('More info')\"\n >\n More info\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n</sky-dropdown>\n","export interface AutocompleteOption {\n id: string;\n name: string;\n}\n\nexport const DEPARTMENTS = [\n {\n id: '1',\n name: 'Marketing',\n },\n {\n id: '2',\n name: 'Sales',\n },\n {\n id: '3',\n name: 'Engineering',\n },\n {\n id: '4',\n name: 'Customer Support',\n },\n];\n\nexport const JOB_TITLES: Record<string, AutocompleteOption[]> = {\n Marketing: [\n {\n id: '1',\n name: 'Social Media Coordinator',\n },\n {\n id: '2',\n name: 'Blog Manager',\n },\n {\n id: '3',\n name: 'Events Manager',\n },\n ],\n Sales: [\n {\n id: '4',\n name: 'Business Development Representative',\n },\n {\n id: '5',\n name: 'Account Executive',\n },\n ],\n Engineering: [\n {\n id: '6',\n name: 'Software Engineer',\n },\n {\n id: '7',\n name: 'Senior Software Engineer',\n },\n {\n id: '8',\n name: 'Principal Software Engineer',\n },\n {\n id: '9',\n name: 'UX Designer',\n },\n {\n id: '10',\n name: 'Product Manager',\n },\n ],\n 'Customer Support': [\n {\n id: '11',\n name: 'Customer Support Representative',\n },\n {\n id: '12',\n name: 'Account Manager',\n },\n {\n id: '13',\n name: 'Customer Support Specialist',\n },\n ],\n};\n\nexport interface AgGridDemoRow {\n selected?: boolean;\n name: string;\n age: number;\n startDate: Date;\n endDate?: Date;\n department: AutocompleteOption;\n jobTitle?: AutocompleteOption;\n}\n\nexport const AG_GRID_DEMO_DATA = [\n {\n name: 'Billy Bob',\n age: 55,\n startDate: new Date('12/1/1994'),\n department: DEPARTMENTS[3],\n jobTitle: JOB_TITLES['Customer Support'][1],\n },\n {\n name: 'Jane Deere',\n age: 33,\n startDate: new Date('7/15/2009'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][2],\n },\n {\n name: 'John Doe',\n age: 38,\n startDate: new Date('9/1/2017'),\n endDate: new Date('9/30/2017'),\n department: DEPARTMENTS[1],\n },\n {\n name: 'David Smith',\n age: 51,\n startDate: new Date('1/1/2012'),\n endDate: new Date('6/15/2018'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][4],\n },\n {\n name: 'Emily Johnson',\n age: 41,\n startDate: new Date('1/15/2014'),\n department: DEPARTMENTS[0],\n jobTitle: JOB_TITLES['Marketing'][2],\n },\n {\n name: 'Nicole Davidson',\n age: 22,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][0],\n },\n {\n name: 'Carl Roberts',\n age: 23,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][3],\n },\n];\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n OnDestroy,\n OnInit,\n inject,\n} from '@angular/core';\nimport { ActivatedRoute, NavigationEnd, Router } from '@angular/router';\nimport { SkyAgGridModule, SkyAgGridService, SkyCellType } from '@skyux/ag-grid';\nimport { SkyDataManagerService } from '@skyux/data-manager';\nimport { SkyPagingModule } from '@skyux/lists';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport {\n ColDef,\n GridApi,\n GridOptions,\n GridReadyEvent,\n ValueFormatterParams,\n} from 'ag-grid-community';\nimport { Subscription } from 'rxjs';\nimport { filter, map } from 'rxjs/operators';\n\nimport { ContextMenuComponent } from './context-menu.component';\nimport { AG_GRID_DEMO_DATA, AgGridDemoRow } from './data';\n\n@Component({\n selector: 'app-ag-grid-data-grid-paging-example',\n templateUrl: './example.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [SkyDataManagerService],\n imports: [AgGridModule, SkyAgGridModule, SkyPagingModule],\n})\nexport class AgGridDataGridPagingExampleComponent implements OnInit, OnDestroy {\n protected currentPage = 1;\n\n protected readonly pageSize = 3;\n\n #columnDefs: ColDef[] = [\n {\n colId: 'context',\n maxWidth: 50,\n sortable: false,\n cellRenderer: ContextMenuComponent,\n },\n {\n field: 'name',\n headerName: 'Name',\n },\n {\n field: 'age',\n headerName: 'Age',\n type: SkyCellType.Number,\n maxWidth: 60,\n },\n {\n field: 'startDate',\n headerName: 'Start date',\n type: SkyCellType.Date,\n sort: 'asc',\n },\n {\n field: 'endDate',\n headerName: 'End date',\n type: SkyCellType.Date,\n valueFormatter: (params: ValueFormatterParams<AgGridDemoRow, Date>) =>\n this.#endDateFormatter(params),\n },\n {\n field: 'department',\n headerName: 'Department',\n type: SkyCellType.Autocomplete,\n },\n {\n field: 'jobTitle',\n headerName: 'Title',\n type: SkyCellType.Autocomplete,\n },\n ];\n\n protected gridData = AG_GRID_DEMO_DATA;\n protected gridOptions: GridOptions;\n\n #gridApi: GridApi | undefined;\n #subscriptions = new Subscription();\n\n readonly #activatedRoute = inject(ActivatedRoute);\n readonly #agGridSvc = inject(SkyAgGridService);\n readonly #changeDetectorRef = inject(ChangeDetectorRef);\n readonly #router = inject(Router);\n\n constructor() {\n const gridOptions: GridOptions = {\n columnDefs: this.#columnDefs,\n onGridReady: (gridReadyEvent): void => {\n this.onGridReady(gridReadyEvent);\n },\n rowSelection: { mode: 'singleRow' },\n pagination: true,\n suppressPaginationPanel: true,\n paginationPageSize: this.pageSize,\n };\n\n this.gridOptions = this.#agGridSvc.getGridOptions({\n gridOptions,\n });\n }\n\n public ngOnInit(): void {\n this.#subscriptions.add(\n this.#activatedRoute.queryParamMap\n .pipe(map((params) => params.get('page') ?? '1'))\n .subscribe((page) => {\n this.currentPage = Number(page);\n this.#gridApi?.paginationGoToPage(this.currentPage - 1);\n this.#changeDetectorRef.detectChanges();\n }),\n );\n\n this.#subscriptions.add(\n this.#router.events\n .pipe(filter((event) => event instanceof NavigationEnd))\n .subscribe(() => {\n const page = this.#activatedRoute.snapshot.paramMap.get('page');\n\n if (page) {\n this.currentPage = Number(page);\n }\n\n this.#gridApi?.paginationGoToPage(this.currentPage - 1);\n this.#changeDetectorRef.detectChanges();\n }),\n );\n }\n\n public ngOnDestroy(): void {\n this.#subscriptions.unsubscribe();\n }\n\n public onGridReady(gridReadyEvent: GridReadyEvent): void {\n this.#gridApi = gridReadyEvent.api;\n this.#gridApi.paginationGoToPage(this.currentPage - 1);\n }\n\n protected async onPageChange(page: number): Promise<void> {\n await this.#router.navigate(['.'], {\n relativeTo: this.#activatedRoute,\n queryParams: { page: page.toString(10) },\n queryParamsHandling: 'merge',\n });\n }\n\n #endDateFormatter(params: ValueFormatterParams<AgGridDemoRow, Date>): string {\n return params.value\n ? params.value.toLocaleDateString('en-us', {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n })\n : 'N/A';\n }\n}\n","<sky-ag-grid-wrapper>\n <ag-grid-angular [gridOptions]=\"gridOptions\" [rowData]=\"gridData\" />\n</sky-ag-grid-wrapper>\n\n<sky-paging\n [currentPage]=\"currentPage\"\n [itemCount]=\"gridData.length\"\n [pageSize]=\"pageSize\"\n (currentPageChange)=\"onPageChange($event)\"\n/>\n","export interface AgGridDemoRow {\n name: string;\n age: number;\n department: string;\n jobTitle: string;\n}\n\nexport const AG_GRID_DEMO_DATA = [\n {\n name: 'Billy Bob',\n age: 55,\n department: 'Customer Support',\n jobTitle: 'Customer Support Representative',\n jobLevel: '🥈',\n },\n {\n name: 'Jane Deere',\n age: 33,\n department: 'Engineering',\n jobTitle: 'Software Engineer',\n jobLevel: '🥇',\n },\n {\n name: 'John Doe',\n age: 38,\n department: 'Engineering',\n jobTitle: 'UX Designer',\n },\n {\n name: 'David Smith',\n age: 51,\n department: 'Engineering',\n jobTitle: 'Software Engineer',\n jobLevel: '🥉',\n },\n {\n name: 'Emily Johnson',\n age: 41,\n department: 'Marketing',\n jobTitle: 'Customer Support Representative',\n },\n {\n name: 'Nicole Davidson',\n age: 22,\n startDate: new Date('11/1/2019'),\n department: 'Marketing',\n jobTitle: 'Account Manager',\n jobLevel: '🥈',\n },\n {\n name: 'Carl Roberts',\n age: 23,\n startDate: new Date('11/1/2019'),\n department: 'Marketing',\n jobTitle: 'Social Media Coordinator',\n jobLevel: '🥇',\n },\n];\n","import {\n Component,\n OnInit,\n TemplateRef,\n ViewChild,\n inject,\n} from '@angular/core';\nimport { SkyAgGridModule, SkyAgGridService, SkyCellType } from '@skyux/ag-grid';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport { GridOptions } from 'ag-grid-community';\n\nimport { AG_GRID_DEMO_DATA } from './data';\n\n@Component({\n selector: 'app-ag-grid-data-grid-template-ref-column-example',\n templateUrl: './example.component.html',\n imports: [AgGridModule, SkyAgGridModule],\n})\nexport class AgGridDataGridTemplateRefColumnExampleComponent implements OnInit {\n @ViewChild('boldColumn', { static: true })\n protected boldColumn: TemplateRef<unknown> | undefined;\n\n @ViewChild('emphasizedColumn', { static: true })\n protected emphasizedColumn: TemplateRef<unknown> | undefined;\n\n protected gridData = AG_GRID_DEMO_DATA;\n protected gridOptions: GridOptions | undefined;\n\n readonly #agGridSvc = inject(SkyAgGridService);\n\n public ngOnInit(): void {\n this.gridOptions = this.#agGridSvc.getGridOptions({\n gridOptions: {\n columnDefs: [\n {\n field: 'name',\n headerName: 'Name',\n initialWidth: 150,\n },\n {\n field: 'age',\n headerName: 'Age',\n type: SkyCellType.Number,\n maxWidth: 80,\n resizable: false,\n },\n {\n field: 'department',\n headerName: 'Department',\n type: SkyCellType.Template,\n cellRendererParams: {\n template: this.boldColumn,\n },\n initialWidth: 220,\n },\n {\n field: 'jobTitle',\n headerName: 'Title',\n type: SkyCellType.Template,\n cellRendererParams: {\n template: this.emphasizedColumn,\n },\n initialWidth: 220,\n },\n ],\n },\n });\n }\n}\n","<ng-template #boldColumn let-value=\"value\">\n <strong>{{ value }}</strong>\n</ng-template>\n<ng-template #emphasizedColumn let-value=\"value\" let-row=\"row\">\n @if (row['jobLevel']) {\n <span class=\"sky-margin-inline-sm sky-pull-right\">{{\n row['jobLevel']\n }}</span>\n }\n <em>{{ value }}</em>\n</ng-template>\n<sky-ag-grid-wrapper>\n <ag-grid-angular [gridOptions]=\"gridOptions\" [rowData]=\"gridData\" />\n</sky-ag-grid-wrapper>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\nimport { ICellRendererParams } from 'ag-grid-community';\n\nimport { AgGridDemoRow } from './data';\n\n@Component({\n selector: 'app-context-menu',\n templateUrl: './context-menu.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyDropdownModule],\n})\nexport class ContextMenuComponent implements ICellRendererAngularComp {\n public contextMenuAriaLabel = '';\n public deleteAriaLabel = '';\n public markInactiveAriaLabel = '';\n public moreInfoAriaLabel = '';\n\n #name: string | undefined;\n\n public agInit(params: ICellRendererParams<AgGridDemoRow>): void {\n this.#name = params.data?.name;\n this.contextMenuAriaLabel = `Context menu for ${this.#name}`;\n this.deleteAriaLabel = `Delete ${this.#name}`;\n this.markInactiveAriaLabel = `Mark ${this.#name} inactive`;\n this.moreInfoAriaLabel = `More info for ${this.#name}`;\n }\n\n public refresh(): boolean {\n return false;\n }\n\n protected actionClicked(action: string): void {\n alert(`${action} clicked for ${this.#name}`);\n }\n}\n","<sky-dropdown buttonType=\"context-menu\" [label]=\"contextMenuAriaLabel\">\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"deleteAriaLabel\"\n (click)=\"actionClicked('Delete')\"\n >\n Delete\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"markInactiveAriaLabel\"\n (click)=\"actionClicked('Mark inactive')\"\n >\n Mark inactive\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"moreInfoAriaLabel\"\n (click)=\"actionClicked('More info')\"\n >\n More info\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n</sky-dropdown>\n","export interface AutocompleteOption {\n id: string;\n name: string;\n}\n\nexport const DEPARTMENTS = [\n {\n id: '1',\n name: 'Marketing',\n },\n {\n id: '2',\n name: 'Sales',\n },\n {\n id: '3',\n name: 'Engineering',\n },\n {\n id: '4',\n name: 'Customer Support',\n },\n];\n\nexport const JOB_TITLES: Record<string, AutocompleteOption[]> = {\n Marketing: [\n {\n id: '1',\n name: 'Social Media Coordinator',\n },\n {\n id: '2',\n name: 'Blog Manager',\n },\n {\n id: '3',\n name: 'Events Manager',\n },\n ],\n Sales: [\n {\n id: '4',\n name: 'Business Development Representative',\n },\n {\n id: '5',\n name: 'Account Executive',\n },\n ],\n Engineering: [\n {\n id: '6',\n name: 'Software Engineer',\n },\n {\n id: '7',\n name: 'Senior Software Engineer',\n },\n {\n id: '8',\n name: 'Principal Software Engineer',\n },\n {\n id: '9',\n name: 'UX Designer',\n },\n {\n id: '10',\n name: 'Product Manager',\n },\n ],\n 'Customer Support': [\n {\n id: '11',\n name: 'Customer Support Representative',\n },\n {\n id: '12',\n name: 'Account Manager',\n },\n {\n id: '13',\n name: 'Customer Support Specialist',\n },\n ],\n};\n\nexport interface AgGridDemoRow {\n selected?: boolean;\n name: string;\n age: number;\n startDate: Date;\n endDate?: Date;\n department: AutocompleteOption;\n jobTitle?: AutocompleteOption;\n}\n\nexport const AG_GRID_DEMO_DATA = [\n {\n selected: true,\n name: 'Billy Bob',\n age: 55,\n startDate: new Date('12/1/1994'),\n department: DEPARTMENTS[3],\n jobTitle: JOB_TITLES['Customer Support'][1],\n },\n {\n selected: false,\n name: 'Jane Deere',\n age: 33,\n startDate: new Date('7/15/2009'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][2],\n },\n {\n selected: false,\n name: 'John Doe',\n age: 38,\n startDate: new Date('9/1/2017'),\n endDate: new Date('9/30/2017'),\n department: DEPARTMENTS[1],\n },\n {\n selected: false,\n name: 'David Smith',\n age: 51,\n startDate: new Date('1/1/2012'),\n endDate: new Date('6/15/2018'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][4],\n },\n {\n selected: true,\n name: 'Emily Johnson',\n age: 41,\n startDate: new Date('1/15/2014'),\n department: DEPARTMENTS[0],\n jobTitle: JOB_TITLES['Marketing'][2],\n },\n {\n selected: false,\n name: 'Nicole Davidson',\n age: 22,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][0],\n },\n {\n selected: false,\n name: 'Carl Roberts',\n age: 23,\n startDate: new Date('11/1/2019'),\n department: DEPARTMENTS[2],\n jobTitle: JOB_TITLES['Engineering'][3],\n },\n];\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { SkyAgGridModule, SkyAgGridService, SkyCellType } from '@skyux/ag-grid';\nimport { SkyDataManagerService } from '@skyux/data-manager';\nimport { SkyToolbarModule } from '@skyux/layout';\nimport { SkySearchModule } from '@skyux/lookup';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport {\n ColDef,\n GridApi,\n GridOptions,\n GridReadyEvent,\n ValueFormatterParams,\n} from 'ag-grid-community';\nimport { of } from 'rxjs';\n\nimport { ContextMenuComponent } from './context-menu.component';\nimport { AG_GRID_DEMO_DATA, AgGridDemoRow } from './data';\n\n@Component({\n selector: 'app-ag-grid-data-grid-top-scroll-example',\n templateUrl: './example.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [SkyDataManagerService],\n imports: [AgGridModule, SkyAgGridModule, SkySearchModule, SkyToolbarModule],\n})\nexport class AgGridDataGridTopScrollExampleComponent {\n protected gridData = AG_GRID_DEMO_DATA;\n protected gridOptions: GridOptions;\n protected searchText = '';\n protected noRowsTemplate = `<div class=\"sky-font-deemphasized\">No results found.</div>`;\n\n #columnDefs: ColDef[] = [\n {\n colId: 'context',\n maxWidth: 50,\n sortable: false,\n cellRenderer: ContextMenuComponent,\n },\n {\n field: 'selected',\n type: SkyCellType.RowSelector,\n cellRendererParams: {\n // Could be a SkyAppResourcesService.getString call that returns an observable.\n label: (data: AgGridDemoRow) => of(`Select ${data.name}`),\n },\n },\n {\n field: 'name',\n headerName: 'Name',\n },\n {\n field: 'age',\n headerName: 'Age',\n type: SkyCellType.Number,\n maxWidth: 60,\n },\n {\n field: 'startDate',\n headerName: 'Start date',\n type: SkyCellType.Date,\n sort: 'asc',\n },\n {\n field: 'endDate',\n headerName: 'End date',\n type: SkyCellType.Date,\n valueFormatter: (params: ValueFormatterParams<AgGridDemoRow, Date>) =>\n this.#endDateFormatter(params),\n },\n {\n field: 'department',\n headerName: 'Department',\n type: SkyCellType.Autocomplete,\n },\n {\n field: 'jobTitle',\n headerName: 'Title',\n type: SkyCellType.Autocomplete,\n },\n ];\n\n #gridApi: GridApi | undefined;\n\n readonly #agGridSvc = inject(SkyAgGridService);\n\n constructor() {\n this.gridOptions = this.#agGridSvc.getGridOptions({\n gridOptions: {\n columnDefs: this.#columnDefs,\n onGridReady: (gridReadyEvent): void => {\n this.onGridReady(gridReadyEvent);\n },\n context: {\n enableTopScroll: true,\n },\n },\n });\n }\n\n public onGridReady(gridReadyEvent: GridReadyEvent): void {\n this.#gridApi = gridReadyEvent.api;\n }\n\n protected searchApplied(searchText: string | void): void {\n this.searchText = searchText ?? '';\n\n if (this.#gridApi) {\n this.#gridApi.updateGridOptions({ quickFilterText: this.searchText });\n const displayedRowCount = this.#gridApi.getDisplayedRowCount();\n if (displayedRowCount > 0) {\n this.#gridApi.hideOverlay();\n } else {\n this.#gridApi.showNoRowsOverlay();\n }\n }\n }\n\n #endDateFormatter(params: ValueFormatterParams<AgGridDemoRow, Date>): string {\n return params.value\n ? params.value.toLocaleDateString('en-us', {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n })\n : 'N/A';\n }\n}\n","<sky-toolbar>\n <sky-toolbar-item>\n <sky-search\n [debounceTime]=\"250\"\n [searchText]=\"searchText\"\n (searchApply)=\"searchApplied($event)\"\n (searchChange)=\"searchApplied($event)\"\n (searchClear)=\"searchApplied($event)\"\n />\n </sky-toolbar-item>\n</sky-toolbar>\n<sky-ag-grid-wrapper>\n <ag-grid-angular\n [gridOptions]=\"gridOptions\"\n [overlayNoRowsTemplate]=\"noRowsTemplate\"\n [rowData]=\"gridData\"\n />\n</sky-ag-grid-wrapper>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n ReactiveFormsModule,\n ValidationErrors,\n} from '@angular/forms';\nimport { SkyColorpickerModule, SkyColorpickerOutput } from '@skyux/colorpicker';\n\ninterface DemoForm {\n favoriteColor: FormControl<SkyColorpickerOutput | string>;\n}\n\nfunction isColorpickerOutput(value: unknown): value is SkyColorpickerOutput {\n return !!(value && typeof value === 'object' && 'rgba' in value);\n}\n\n@Component({\n selector: 'app-colorpicker-basic-example',\n templateUrl: './example.component.html',\n imports: [ReactiveFormsModule, SkyColorpickerModule],\n})\nexport class ColorpickerBasicExampleComponent {\n protected favoriteColor: FormControl<SkyColorpickerOutput | string>;\n protected formGroup: FormGroup<DemoForm>;\n\n protected swatches: string[] = [\n '#BD4040',\n '#617FC2',\n '#60AC68',\n '#3486BA',\n '#E87134',\n '#DA9C9C',\n ];\n\n constructor() {\n this.favoriteColor = new FormControl('#f00', {\n nonNullable: true,\n validators: [\n (control): ValidationErrors | null => {\n return isColorpickerOutput(control.value) &&\n control.value.rgba.alpha < 0.8\n ? { opaque: true }\n : null;\n },\n ],\n });\n\n this.formGroup = inject(FormBuilder).group<DemoForm>({\n favoriteColor: this.favoriteColor,\n });\n }\n\n protected onSelectedColorChanged(args: SkyColorpickerOutput): void {\n console.log('Reactive form color changed:', args);\n }\n\n protected submit(): void {\n const controlValue = this.favoriteColor.value;\n const favoriteColor = isColorpickerOutput(controlValue)\n ? controlValue.hex\n : controlValue;\n\n alert('Your favorite color is: \\n' + favoriteColor);\n }\n}\n","<form [formGroup]=\"formGroup\" (ngSubmit)=\"submit()\">\n <sky-colorpicker\n #colorPicker\n data-sky-id=\"favorite-color\"\n labelText=\"What is your favorite color?\"\n hintText=\"Pick a color with at least 80% opacity.\"\n [stacked]=\"true\"\n (selectedColorChanged)=\"onSelectedColorChanged($event)\"\n >\n <input\n formControlName=\"favoriteColor\"\n type=\"text\"\n [presetColors]=\"swatches\"\n [skyColorpickerInput]=\"colorPicker\"\n />\n @if (favoriteColor.errors?.['opaque']) {\n <sky-form-error\n errorName=\"opaque\"\n errorText=\"Color must have at least 80% opacity.\"\n />\n }\n </sky-colorpicker>\n\n <button class=\"sky-btn sky-btn-primary\" type=\"submit\">Submit</button>\n</form>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n ReactiveFormsModule,\n ValidationErrors,\n} from '@angular/forms';\nimport { SkyColorpickerModule, SkyColorpickerOutput } from '@skyux/colorpicker';\n\ninterface DemoForm {\n favoriteColor: FormControl<SkyColorpickerOutput | string>;\n}\n\nfunction isColorpickerOutput(value: unknown): value is SkyColorpickerOutput {\n return !!(value && typeof value === 'object' && 'rgba' in value);\n}\n\n@Component({\n selector: 'app-colorpicker-help-key-example',\n templateUrl: './example.component.html',\n imports: [ReactiveFormsModule, SkyColorpickerModule],\n})\nexport class ColorpickerHelpKeyExampleComponent {\n protected favoriteColor: FormControl<SkyColorpickerOutput | string>;\n protected formGroup: FormGroup<DemoForm>;\n\n protected swatches: string[] = [\n '#BD4040',\n '#617FC2',\n '#60AC68',\n '#3486BA',\n '#E87134',\n '#DA9C9C',\n ];\n\n constructor() {\n this.favoriteColor = new FormControl('#f00', {\n nonNullable: true,\n validators: [\n (control): ValidationErrors | null => {\n return isColorpickerOutput(control.value) &&\n control.value.rgba.alpha < 0.8\n ? { opaque: true }\n : null;\n },\n ],\n });\n\n this.formGroup = inject(FormBuilder).group<DemoForm>({\n favoriteColor: this.favoriteColor,\n });\n }\n\n protected onSelectedColorChanged(args: SkyColorpickerOutput): void {\n console.log('Reactive form color changed:', args);\n }\n\n protected submit(): void {\n const controlValue = this.favoriteColor.value;\n const favoriteColor = isColorpickerOutput(controlValue)\n ? controlValue.hex\n : controlValue;\n\n alert('Your favorite color is: \\n' + favoriteColor);\n }\n}\n","<form [formGroup]=\"formGroup\" (ngSubmit)=\"submit()\">\n <sky-colorpicker\n #colorPicker\n data-sky-id=\"favorite-color\"\n labelText=\"What is your favorite color?\"\n helpKey=\"color-help\"\n hintText=\"Pick a color with at least 80% opacity.\"\n [stacked]=\"true\"\n (selectedColorChanged)=\"onSelectedColorChanged($event)\"\n >\n <input\n formControlName=\"favoriteColor\"\n type=\"text\"\n [presetColors]=\"swatches\"\n [skyColorpickerInput]=\"colorPicker\"\n />\n @if (favoriteColor.errors?.['opaque']) {\n <sky-form-error\n errorName=\"opaque\"\n errorText=\"Color must have at least 80% opacity.\"\n />\n }\n </sky-colorpicker>\n\n <button class=\"sky-btn sky-btn-primary\" type=\"submit\">Submit</button>\n</form>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n ValidationErrors,\n} from '@angular/forms';\nimport {\n SkyColorpickerMessage,\n SkyColorpickerMessageType,\n SkyColorpickerModule,\n SkyColorpickerOutput,\n} from '@skyux/colorpicker';\n\nimport { Subject } from 'rxjs';\n\ninterface DemoForm {\n favoriteColor: FormControl<SkyColorpickerOutput | string>;\n}\n\nfunction isColorpickerOutput(value: unknown): value is SkyColorpickerOutput {\n return !!(value && typeof value === 'object' && 'rgba' in value);\n}\n\n@Component({\n selector: 'app-colorpicker-programmatic-example',\n templateUrl: './example.component.html',\n imports: [FormsModule, ReactiveFormsModule, SkyColorpickerModule],\n})\nexport class ColorpickerProgrammaticExampleComponent {\n protected colorpickerController = new Subject<SkyColorpickerMessage>();\n protected favoriteColor: FormControl<SkyColorpickerOutput | string>;\n protected formGroup: FormGroup<DemoForm>;\n protected showResetButton = false;\n\n constructor() {\n this.favoriteColor = new FormControl('#f00', {\n nonNullable: true,\n validators: [\n (control): ValidationErrors | null => {\n return isColorpickerOutput(control.value) &&\n control.value.rgba.alpha < 0.8\n ? { opaque: true }\n : null;\n },\n ],\n });\n\n this.formGroup = inject(FormBuilder).group<DemoForm>({\n favoriteColor: this.favoriteColor,\n });\n }\n\n protected openColorpicker(): void {\n this.#sendMessage(SkyColorpickerMessageType.Open);\n }\n\n protected resetColorpicker(): void {\n this.#sendMessage(SkyColorpickerMessageType.Reset);\n }\n\n protected toggleResetButton(): void {\n this.#sendMessage(SkyColorpickerMessageType.ToggleResetButton);\n }\n\n #sendMessage(type: SkyColorpickerMessageType): void {\n this.colorpickerController.next({ type });\n }\n}\n","<form class=\"sky-margin-stacked-xxl\" [formGroup]=\"formGroup\">\n <sky-colorpicker\n #colorPicker\n labelText=\"What is your favorite color?\"\n hintText=\"Pick a color with at least 80% opacity.\"\n [messageStream]=\"colorpickerController\"\n [showResetButton]=\"showResetButton\"\n [stacked]=\"true\"\n >\n <input\n formControlName=\"favoriteColor\"\n type=\"text\"\n [skyColorpickerInput]=\"colorPicker\"\n />\n @if (favoriteColor.errors?.['opaque']) {\n <sky-form-error\n errorName=\"opaque\"\n errorText=\"Color must have at least 80% opacity.\"\n />\n }\n </sky-colorpicker>\n</form>\n\n<button\n class=\"sky-btn sky-btn-default sky-margin-inline-sm\"\n type=\"button\"\n (click)=\"openColorpicker()\"\n>\n Open colorpicker\n</button>\n\n<button\n class=\"sky-btn sky-btn-default sky-margin-inline-sm\"\n type=\"button\"\n (click)=\"resetColorpicker()\"\n>\n Reset colorpicker\n</button>\n\n<button\n class=\"sky-btn sky-btn-default sky-margin-inline-sm\"\n type=\"button\"\n (click)=\"toggleResetButton()\"\n>\n Toggle reset button\n</button>\n","import { CommonModule } from '@angular/common';\nimport { Component, inject } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { SkyMediaQueryService } from '@skyux/core';\nimport { SkyIconModule } from '@skyux/icon';\n\n@Component({\n imports: [CommonModule, SkyIconModule],\n selector: 'app-core-media-query-basic-example',\n templateUrl: './example.component.html',\n})\nexport class CoreMediaQueryBasicExampleComponent {\n protected breakpoint = toSignal(\n inject(SkyMediaQueryService).breakpointChange,\n );\n}\n","<p>Current media breakpoint: {{ breakpoint() }}</p>\n\n@if (breakpoint() === 'xs') {\n <nav class=\"my-nav-mobile\">\n <ul>\n <li>\n <button aria-label=\"Home\" type=\"button\">\n <sky-icon icon=\"menu\" />\n </button>\n </li>\n </ul>\n </nav>\n} @else {\n <nav class=\"my-nav-desktop\">\n <ul>\n <li>\n <a href=\"#\">Home</a>\n </li>\n </ul>\n </nav>\n}\n","import { Component, inject } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { SkyMediaQueryService } from '@skyux/core';\n\n@Component({\n selector: 'app-child',\n standalone: true,\n template: `<p>Breakpoint for child: {{ breakpoint() }}</p>`,\n})\nexport class DemoChildComponent {\n protected breakpoint = toSignal(\n inject(SkyMediaQueryService).breakpointChange,\n );\n}\n","import { Component, inject } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { SkyMediaQueryService, SkyResponsiveHostDirective } from '@skyux/core';\n\n@Component({\n hostDirectives: [SkyResponsiveHostDirective],\n selector: 'app-container',\n standalone: true,\n styles: `\n :host {\n border: 1px solid var(--sky-border-color-neutral-medium-dark);\n display: block;\n margin: 0 auto;\n max-width: 800px;\n }\n `,\n template: `\n <p>Breakpoint within container: {{ breakpoint() }}</p>\n <ng-content />\n `,\n})\nexport class DemoContainerComponent {\n protected breakpoint = toSignal(\n inject(SkyMediaQueryService).breakpointChange,\n );\n}\n","import { CommonModule } from '@angular/common';\nimport { Component, inject } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { SkyMediaQueryService, SkyResponsiveHostDirective } from '@skyux/core';\nimport { SkyIconModule } from '@skyux/icon';\n\nimport { DemoChildComponent } from './child.component';\nimport { DemoContainerComponent } from './container.component';\n\n@Component({\n imports: [\n CommonModule,\n DemoChildComponent,\n DemoContainerComponent,\n SkyResponsiveHostDirective,\n SkyIconModule,\n ],\n selector: 'app-core-media-query-responsive-host-example',\n styleUrl: './example.component.scss',\n templateUrl: './example.component.html',\n})\nexport class CoreMediaQueryResponsiveHostExampleComponent {\n protected breakpoint = toSignal(\n inject(SkyMediaQueryService).breakpointChange,\n );\n}\n","<p>Viewport breakpoint: {{ breakpoint() }}</p>\n\n<h4>Creating a responsive host using the host directive</h4>\n\n<app-container data-sky-id=\"container-w-host-directive\" />\n\n<h4>Creating a responsive host using the directive attribute</h4>\n\n<div\n #hostRef=\"skyResponsiveHost\"\n class=\"my-container\"\n data-sky-id=\"container-w-attr\"\n skyResponsiveHost\n>\n <p>Breakpoint within container: {{ hostRef.breakpointChange | async }}</p>\n</div>\n\n<h4>Creating a responsive host that wraps embedded views</h4>\n\n<p>\n The responsive host's injector must be passed to the embedded view manually.\n</p>\n\n<app-container #responsiveHost=\"skyResponsiveHost\">\n <ng-container\n [ngTemplateOutlet]=\"myTemplate\"\n [ngTemplateOutletInjector]=\"responsiveHost.injector\"\n />\n</app-container>\n\n<ng-template #myTemplate>\n <app-child />\n</ng-template>\n","import { Component, Input } from '@angular/core';\nimport { SkyNumericModule, SkyNumericOptions } from '@skyux/core';\nimport { SkyDescriptionListModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-core-numeric-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyDescriptionListModule, SkyNumericModule],\n})\nexport class CoreNumericBasicExampleComponent {\n @Input()\n public defaultValue = 1000000;\n\n @Input()\n public configuredValue = 1234567;\n\n @Input()\n public numericOptions: SkyNumericOptions = {\n digits: 3,\n format: 'currency',\n iso: 'JPY',\n };\n}\n","<sky-description-list mode=\"vertical\">\n <sky-description-list-content>\n <sky-description-list-term> Default setup </sky-description-list-term>\n <sky-description-list-description>\n <span class=\"default-value\">\n {{ defaultValue | skyNumeric }}\n </span>\n </sky-description-list-description>\n </sky-description-list-content>\n <sky-description-list-content>\n <sky-description-list-term> With options </sky-description-list-term>\n <sky-description-list-description>\n <span class=\"configured-value\">\n {{ configuredValue | skyNumeric: numericOptions }}\n </span>\n </sky-description-list-description>\n </sky-description-list-content>\n</sky-description-list>\n","import { Component, inject } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormsModule,\n ReactiveFormsModule,\n ValidationErrors,\n} from '@angular/forms';\nimport {\n SkyDateRangeCalculation,\n SkyDateRangeCalculatorId,\n SkyDateRangePickerModule,\n SkyDatepickerModule,\n} from '@skyux/datetime';\n\nfunction dateRangeExcludesWeekend(\n control: AbstractControl,\n): ValidationErrors | null {\n const startDate = control.value.startDate;\n const endDate = control.value.endDate;\n\n const isWeekend = (value: unknown): boolean => {\n return (\n value instanceof Date && (value.getDay() === 6 || value.getDay() === 0)\n );\n };\n\n if (isWeekend(startDate) || isWeekend(endDate)) {\n return { dateWeekend: true };\n }\n\n return null;\n}\n\n@Component({\n selector: 'app-datetime-date-range-picker-basic-example',\n templateUrl: './example.component.html',\n // NOTE: `SkyDatepickerModule` is imported to address a stackblitz error.\n // Consumers DO NOT need to import `SkyDatepickerModule` when using `sky-date-ranger-picker`\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyDateRangePickerModule,\n SkyDatepickerModule,\n ],\n})\nexport class DatetimeDateRangePickerBasicExampleComponent {\n protected dateFormat: string | undefined;\n protected disabled = false;\n protected hintText =\n 'Donations received today are updated at the top of each hour.';\n protected labelText = 'Last donation';\n\n protected lastDonation = new FormControl<SkyDateRangeCalculation>(\n {\n value: {\n calculatorId: SkyDateRangeCalculatorId.AnyTime,\n },\n disabled: this.disabled,\n },\n {\n nonNullable: true,\n validators: [dateRangeExcludesWeekend],\n },\n );\n\n protected formGroup = inject(FormBuilder).group({\n lastDonation: this.lastDonation,\n });\n}\n","<div class=\"sky-padding-even-lg\">\n <form [formGroup]=\"formGroup\">\n <sky-date-range-picker\n data-sky-id=\"last-donation\"\n formControlName=\"lastDonation\"\n [dateFormat]=\"dateFormat\"\n [helpPopoverContent]=\"inlineHelpPopover\"\n [hintText]=\"hintText\"\n [labelText]=\"labelText\"\n >\n @if (lastDonation.errors?.['dateWeekend']) {\n <sky-form-error\n errorName=\"dateWeekend\"\n errorText=\"Do not pick a weekend.\"\n />\n }\n </sky-date-range-picker>\n </form>\n</div>\n\n<ng-template #inlineHelpPopover>\n By default, donations include one-time gifts, pledges, and matching gifts. To\n customize, see <a>Giving settings</a>.\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { Component, inject, signal } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport {\n FormBuilder,\n FormControl,\n FormsModule,\n ReactiveFormsModule,\n ValidationErrors,\n} from '@angular/forms';\nimport {\n SkyDateRangeCalculation,\n SkyDateRangeCalculator,\n SkyDateRangeCalculatorId,\n SkyDateRangeCalculatorType,\n SkyDateRangePickerModule,\n SkyDateRangeService,\n} from '@skyux/datetime';\n\n@Component({\n selector: 'app-datetime-date-range-picker-custom-calculator-example',\n templateUrl: './example.component.html',\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n SkyDateRangePickerModule,\n ],\n})\nexport class DatetimeDateRangePickerCustomCalculatorExampleComponent {\n readonly #dateRangeSvc = inject(SkyDateRangeService);\n\n protected customCalculators: SkyDateRangeCalculatorId[] | undefined;\n protected disabled = false;\n protected hintText =\n 'Donations received today are updated at the top of each hour.';\n protected labelText = 'Last donation';\n\n protected lastDonation = new FormControl<SkyDateRangeCalculation>(\n {\n value: {\n calculatorId: SkyDateRangeCalculatorId.AnyTime,\n },\n disabled: this.disabled,\n },\n { nonNullable: true },\n );\n\n protected formGroup = inject(FormBuilder).group({\n lastDonation: this.lastDonation,\n });\n\n protected selectedCalculator = signal<SkyDateRangeCalculator | undefined>(\n this.#getCalculatorById(SkyDateRangeCalculatorId.AnyTime),\n );\n\n constructor() {\n const since1999Calculator = this.#dateRangeSvc.createCalculator({\n shortDescription: 'Since 1999',\n type: SkyDateRangeCalculatorType.Relative,\n getValue: () => {\n return {\n startDate: new Date('1/1/1999'),\n endDate: new Date(),\n };\n },\n });\n\n const dateBeforeToday = this.#dateRangeSvc.createCalculator({\n shortDescription: 'Date before today',\n type: SkyDateRangeCalculatorType.Before,\n validate: (value): ValidationErrors | null => {\n if (value?.endDate && value.endDate > new Date()) {\n return {\n dateIsAfterToday: true,\n };\n }\n\n return null;\n },\n getValue: () => {\n return {\n endDate: new Date(),\n };\n },\n });\n\n this.customCalculators = [\n SkyDateRangeCalculatorId.SpecificRange,\n SkyDateRangeCalculatorId.LastFiscalYear,\n since1999Calculator.calculatorId,\n dateBeforeToday.calculatorId,\n SkyDateRangeCalculatorId.AnyTime,\n ];\n\n this.lastDonation.valueChanges\n .pipe(takeUntilDestroyed())\n .subscribe((value) => {\n const selectedCalculator = this.#getCalculatorById(value?.calculatorId);\n\n this.selectedCalculator.set(selectedCalculator);\n });\n }\n\n #getCalculatorById(id: SkyDateRangeCalculatorId): SkyDateRangeCalculator {\n return this.#dateRangeSvc.filterCalculators([id])[0];\n }\n}\n","<div class=\"sky-padding-even-lg\">\n <form [formGroup]=\"formGroup\">\n <sky-date-range-picker\n formControlName=\"lastDonation\"\n [calculatorIds]=\"customCalculators\"\n [helpPopoverContent]=\"inlineHelpPopover\"\n [hintText]=\"hintText\"\n [labelText]=\"labelText\"\n >\n @if (\n lastDonation.errors?.['skyDateRange']?.errors?.['dateIsAfterToday']\n ) {\n <sky-form-error\n errorName=\"dateIsAfterToday\"\n errorText=\"Enter a date before today.\"\n />\n }\n </sky-date-range-picker>\n </form>\n <p>\n Selected calculator: {{ selectedCalculator()?.shortDescription$ | async }}\n </p>\n</div>\n\n<ng-template #inlineHelpPopover>\n By default, donations include one-time gifts, pledges, and matching gifts. To\n customize, see <a>Giving settings</a>.\n</ng-template>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport {\n SkyDateRangeCalculation,\n SkyDateRangeCalculatorId,\n SkyDateRangePickerModule,\n} from '@skyux/datetime';\n\n@Component({\n selector: 'app-datetime-date-range-picker-help-key-example',\n templateUrl: './example.component.html',\n imports: [FormsModule, ReactiveFormsModule, SkyDateRangePickerModule],\n})\nexport class DatetimeDateRangePickerHelpKeyExampleComponent {\n protected dateFormat: string | undefined;\n protected disabled = false;\n protected hintText =\n 'Donations received today are updated at the top of each hour.';\n protected labelText = 'Last donation';\n\n protected lastDonation = new FormControl<SkyDateRangeCalculation>(\n {\n value: {\n calculatorId: SkyDateRangeCalculatorId.AnyTime,\n },\n disabled: this.disabled,\n },\n {\n nonNullable: true,\n },\n );\n\n protected formGroup = inject(FormBuilder).group({\n lastDonation: this.lastDonation,\n });\n}\n","<div class=\"sky-padding-even-lg\">\n <form [formGroup]=\"formGroup\">\n <sky-date-range-picker\n data-sky-id=\"last-donation\"\n formControlName=\"lastDonation\"\n helpKey=\"dates-help\"\n [dateFormat]=\"dateFormat\"\n [hintText]=\"hintText\"\n [labelText]=\"labelText\"\n />\n </form>\n</div>\n","export interface DataManagerDemoRow {\n selected?: boolean;\n id: string;\n name: string;\n description: string;\n type: string;\n color: string;\n}\n\nexport const DATA_MANAGER_DEMO_DATA: DataManagerDemoRow[] = [\n {\n id: '1',\n name: 'Orange',\n description: 'A round, orange fruit. A great source of vitamin C.',\n type: 'citrus',\n color: 'orange',\n },\n {\n id: '2',\n name: 'Mango',\n description:\n \"Very difficult to peel. Delicious in smoothies, but don't eat the skin.\",\n type: 'other',\n color: 'orange',\n },\n {\n id: '3',\n name: 'Lime',\n description: 'A sour, green fruit used in many drinks. It grows on trees.',\n type: 'citrus',\n color: 'green',\n },\n {\n id: '4',\n name: 'Strawberry',\n description:\n 'A red fruit that goes well with shortcake. It is the name of both the fruit and the plant!',\n type: 'berry',\n color: 'red',\n },\n {\n id: '5',\n name: 'Blueberry',\n description:\n 'A small, blue fruit often found in muffins. When not ripe, they can be sour.',\n type: 'berry',\n color: 'blue',\n },\n {\n id: '6',\n name: 'Banana',\n description:\n 'A yellow fruit with a thick skin. Monkeys love them, and in some countries it is customary to eat the peel.',\n type: 'other',\n color: 'yellow',\n },\n];\n","import { Component, OnInit, inject } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport {\n SkyDataManagerFilterData,\n SkyDataManagerFilterModalContext,\n} from '@skyux/data-manager';\nimport { SkyCheckboxModule, SkyInputBoxModule } from '@skyux/forms';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\n\nimport { Filters } from './filters';\n\n@Component({\n selector: 'app-filter-modal',\n templateUrl: './filter-modal.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyCheckboxModule,\n SkyInputBoxModule,\n SkyModalModule,\n ],\n})\nexport class FilterModalComponent implements OnInit {\n protected fruitType: string | undefined;\n protected hideOrange: boolean | undefined;\n\n readonly #context = inject(SkyDataManagerFilterModalContext);\n readonly #instance = inject(SkyModalInstance);\n\n public ngOnInit(): void {\n if (this.#context.filterData?.filters) {\n const filters = this.#context.filterData.filters as Filters;\n\n this.fruitType = filters.type ?? 'any';\n this.hideOrange = filters.hideOrange ?? false;\n }\n }\n\n protected applyFilters(): void {\n const result: SkyDataManagerFilterData = {};\n\n result.filtersApplied = this.fruitType !== 'any' || this.hideOrange;\n result.filters = {\n type: this.fruitType,\n hideOrange: this.hideOrange,\n } satisfies Filters;\n\n this.#instance.save(result);\n }\n\n protected clearAllFilters(): void {\n this.hideOrange = false;\n this.fruitType = 'any';\n }\n\n protected cancel(): void {\n this.#instance.cancel();\n }\n}\n","<sky-modal headingText=\"Filter your fruit\">\n <sky-modal-content>\n <sky-input-box labelText=\"Fruit type\" stacked=\"true\">\n <select class=\"sky-form-control\" [(ngModel)]=\"fruitType\">\n <option value=\"any\">Any fruit</option>\n <option value=\"citrus\">Citrus</option>\n <option value=\"berry\">Berry</option>\n </select>\n </sky-input-box>\n <sky-checkbox labelText=\"Hide orange fruits\" [(ngModel)]=\"hideOrange\" />\n </sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-primary sky-margin-inline-sm\"\n type=\"button\"\n (click)=\"applyFilters()\"\n >\n Apply filters\n </button>\n <button\n class=\"sky-btn sky-btn-default sky-margin-inline-sm\"\n type=\"button\"\n (click)=\"clearAllFilters()\"\n >\n Clear all filters\n </button>\n <button class=\"sky-btn sky-btn-link\" type=\"button\" (click)=\"cancel()\">\n Cancel\n </button>\n </sky-modal-footer>\n</sky-modal>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnDestroy,\n OnInit,\n inject,\n} from '@angular/core';\nimport { SkyAgGridModule, SkyAgGridService, SkyCellType } from '@skyux/ag-grid';\nimport {\n SkyDataManagerService,\n SkyDataManagerState,\n SkyDataViewConfig,\n} from '@skyux/data-manager';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport {\n ColDef,\n GridApi,\n GridOptions,\n GridReadyEvent,\n RowSelectedEvent,\n} from 'ag-grid-community';\nimport { Subject, of } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { DataManagerDemoRow } from './data';\nimport { Filters } from './filters';\n\n@Component({\n selector: 'app-view-grid',\n templateUrl: './view-grid.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AgGridModule, SkyAgGridModule],\n})\nexport class ViewGridComponent implements OnInit, OnDestroy {\n @Input()\n public items: DataManagerDemoRow[] = [];\n\n protected displayedItems: DataManagerDemoRow[] = [];\n protected gridOptions: GridOptions;\n protected isActive = false;\n protected isGridInitialized = false;\n protected noRowsTemplate = `<div class=\"sky-font-deemphasized\">No results found.</div>`;\n\n protected readonly viewId = 'gridView';\n\n #columnDefs: ColDef[] = [\n {\n colId: 'selected',\n field: 'selected',\n headerName: '',\n maxWidth: 50,\n type: SkyCellType.RowSelector,\n suppressMovable: true,\n lockPosition: true,\n lockVisible: true,\n cellRendererParams: {\n // Could be a SkyAppResourcesService.getString call that returns an observable.\n label: (data: DataManagerDemoRow) => of(`Select ${data.name}`),\n },\n },\n {\n colId: 'name',\n field: 'name',\n headerName: 'Fruit name',\n width: 150,\n },\n {\n colId: 'description',\n field: 'description',\n headerName: 'Description',\n },\n ];\n\n #dataState = new SkyDataManagerState({});\n #gridApi: GridApi | undefined;\n #ngUnsubscribe = new Subject<void>();\n\n #viewConfig: SkyDataViewConfig = {\n id: this.viewId,\n name: 'Grid View',\n icon: 'table',\n searchEnabled: true,\n multiselectToolbarEnabled: true,\n columnPickerEnabled: true,\n filterButtonEnabled: true,\n columnOptions: [\n {\n id: 'selected',\n alwaysDisplayed: true,\n label: 'selected',\n },\n {\n id: 'name',\n label: 'Fruit name',\n description: 'The name of the fruit.',\n },\n {\n id: 'description',\n label: 'Description',\n description: 'Some information about the fruit.',\n },\n ],\n };\n\n readonly #agGridSvc = inject(SkyAgGridService);\n readonly #changeDetector = inject(ChangeDetectorRef);\n readonly #dataManagerSvc = inject(SkyDataManagerService);\n\n constructor() {\n this.gridOptions = this.#agGridSvc.getGridOptions({\n gridOptions: {\n columnDefs: this.#columnDefs,\n onGridReady: (args) => {\n this.#onGridReady(args);\n },\n },\n });\n }\n\n public ngOnInit(): void {\n this.displayedItems = this.items;\n\n this.#dataManagerSvc.initDataView(this.#viewConfig);\n\n this.#dataManagerSvc\n .getDataStateUpdates(this.viewId)\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((state) => {\n this.#dataState = state;\n this.#setInitialColumnOrder();\n this.#updateData();\n this.#changeDetector.markForCheck();\n });\n\n this.#dataManagerSvc\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((id) => {\n this.isActive = id === this.viewId;\n this.#changeDetector.markForCheck();\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n protected onRowSelected(\n rowSelectedEvent: RowSelectedEvent<DataManagerDemoRow>,\n ): void {\n if (!rowSelectedEvent.data?.selected) {\n this.#updateData();\n }\n }\n\n #filterItems(items: DataManagerDemoRow[]): DataManagerDemoRow[] {\n let filteredItems = items;\n\n const filterData = this.#dataState && this.#dataState.filterData;\n\n if (filterData?.filters) {\n const filters = filterData.filters as Filters;\n\n filteredItems = items.filter((item) => {\n return (\n ((filters.hideOrange && item.color !== 'orange') ??\n !filters.hideOrange) &&\n ((filters.type !== 'any' && item.type === filters.type) ||\n !filters.type ||\n filters.type === 'any')\n );\n });\n }\n\n return filteredItems;\n }\n\n #onGridReady(event: GridReadyEvent): void {\n this.#gridApi = event.api;\n this.#updateData();\n }\n\n #searchItems(items: DataManagerDemoRow[]): DataManagerDemoRow[] {\n let searchedItems = items;\n const searchText = this.#dataState && this.#dataState.searchText;\n\n if (searchText) {\n searchedItems = items.filter((item: DataManagerDemoRow) => {\n let property: keyof typeof item;\n\n for (property in item) {\n if (\n Object.prototype.hasOwnProperty.call(item, property) &&\n (property === 'name' || property === 'description')\n ) {\n const propertyText = item[property].toLowerCase();\n if (propertyText.includes(searchText)) {\n return true;\n }\n }\n }\n\n return false;\n });\n }\n return searchedItems;\n }\n\n #setInitialColumnOrder(): void {\n const viewState = this.#dataState.getViewStateById(this.viewId);\n const visibleColumns = viewState?.displayedColumnIds ?? [];\n\n this.#columnDefs.sort((col1, col2) => {\n const col1Index = visibleColumns.findIndex(\n (colId: string) => colId === col1.colId,\n );\n const col2Index = visibleColumns.findIndex(\n (colId: string) => colId === col2.colId,\n );\n\n if (col1Index === -1) {\n col1.hide = true;\n return 0;\n } else if (col2Index === -1) {\n col2.hide = true;\n return 0;\n } else {\n return col1Index - col2Index;\n }\n });\n\n this.isGridInitialized = true;\n }\n\n #updateData(): void {\n this.displayedItems = this.#filterItems(this.#searchItems(this.items));\n\n if (this.#dataState.onlyShowSelected) {\n this.displayedItems = this.displayedItems.filter((item) => item.selected);\n }\n\n if (this.displayedItems.length > 0) {\n this.#gridApi?.hideOverlay();\n } else {\n this.#gridApi?.showNoRowsOverlay();\n }\n\n this.#dataManagerSvc.updateDataSummary(\n {\n totalItems: this.items.length,\n itemsMatching: this.displayedItems.length,\n },\n this.viewId,\n );\n }\n}\n","<sky-data-view skyAgGridDataManagerAdapter [viewId]=\"viewId\">\n @if (isActive && isGridInitialized) {\n <sky-ag-grid-wrapper>\n <ag-grid-angular\n [gridOptions]=\"gridOptions\"\n [overlayNoRowsTemplate]=\"noRowsTemplate\"\n [rowData]=\"displayedItems\"\n (rowSelected)=\"onRowSelected($event)\"\n />\n </sky-ag-grid-wrapper>\n }\n</sky-data-view>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnDestroy,\n OnInit,\n inject,\n} from '@angular/core';\nimport {\n SkyDataManagerModule,\n SkyDataManagerService,\n SkyDataManagerState,\n SkyDataViewConfig,\n} from '@skyux/data-manager';\nimport { SkyRepeaterModule } from '@skyux/lists';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { DataManagerDemoRow } from './data';\nimport { Filters } from './filters';\n\n@Component({\n selector: 'app-view-repeater',\n templateUrl: './view-repeater.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyDataManagerModule, SkyRepeaterModule],\n})\nexport class ViewRepeaterComponent implements OnInit, OnDestroy {\n @Input()\n public items: DataManagerDemoRow[] = [];\n\n protected displayedItems: DataManagerDemoRow[] = [];\n protected isActive = false;\n\n protected readonly viewId = 'repeaterView';\n\n #dataState = new SkyDataManagerState({});\n #ngUnsubscribe = new Subject<void>();\n\n #viewConfig: SkyDataViewConfig = {\n id: this.viewId,\n name: 'Repeater View',\n icon: 'list',\n searchEnabled: true,\n sortEnabled: true,\n filterButtonEnabled: true,\n multiselectToolbarEnabled: true,\n onClearAllClick: () => {\n this.#clearAll();\n },\n onSelectAllClick: () => {\n this.#selectAll();\n },\n };\n\n readonly #changeDetector = inject(ChangeDetectorRef);\n readonly #dataManagerSvc = inject(SkyDataManagerService);\n\n public ngOnInit(): void {\n this.displayedItems = this.items;\n\n this.#dataManagerSvc.initDataView(this.#viewConfig);\n\n this.#dataManagerSvc\n .getDataStateUpdates(this.viewId)\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((state) => {\n this.#dataState = state;\n this.#updateData();\n });\n\n this.#dataManagerSvc\n .getActiveViewIdUpdates()\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((id) => {\n this.isActive = id === this.viewId;\n this.#changeDetector.markForCheck();\n });\n }\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n protected onItemSelect(isSelected: boolean, item: DataManagerDemoRow): void {\n const selectedItems = this.#dataState.selectedIds ?? [];\n const itemIndex = selectedItems.indexOf(item.id);\n\n if (isSelected && itemIndex === -1) {\n selectedItems.push(item.id);\n } else if (!isSelected && itemIndex !== -1) {\n selectedItems.splice(itemIndex, 1);\n }\n\n this.#dataState.selectedIds = selectedItems;\n this.#dataManagerSvc.updateDataState(this.#dataState, this.viewId);\n\n if (this.#dataState.onlyShowSelected && this.displayedItems) {\n this.displayedItems = this.displayedItems.filter((itm) => itm.selected);\n this.#changeDetector.markForCheck();\n }\n }\n\n #updateData(): void {\n const selectedIds = this.#dataState.selectedIds ?? [];\n\n this.items.forEach((item) => {\n item.selected = selectedIds.includes(item.id);\n });\n\n this.displayedItems = this.#filterItems(this.#searchItems(this.items));\n\n if (this.#dataState.onlyShowSelected) {\n this.displayedItems = this.displayedItems.filter((item) => item.selected);\n }\n\n this.#dataManagerSvc.updateDataSummary(\n {\n totalItems: this.items.length,\n itemsMatching: this.displayedItems.length,\n },\n this.viewId,\n );\n\n this.#changeDetector.markForCheck();\n }\n\n #searchItems(items: DataManagerDemoRow[]): DataManagerDemoRow[] {\n let searchedItems = items;\n const searchText =\n this.#dataState && this.#dataState.searchText?.toUpperCase();\n\n if (searchText) {\n searchedItems = items.filter((item: DataManagerDemoRow) => {\n let property: keyof typeof item;\n\n for (property in item) {\n if (\n Object.prototype.hasOwnProperty.call(item, property) &&\n (property === 'name' || property === 'description')\n ) {\n const propertyText = item[property].toUpperCase();\n if (propertyText.includes(searchText)) {\n return true;\n }\n }\n }\n\n return false;\n });\n }\n\n return searchedItems;\n }\n\n #filterItems(items: DataManagerDemoRow[]): DataManagerDemoRow[] {\n let filteredItems = items;\n const filterData = this.#dataState && this.#dataState.filterData;\n\n if (filterData?.filters) {\n const filters = filterData.filters as Filters;\n\n filteredItems = items.filter((item: DataManagerDemoRow) => {\n if (\n ((filters.hideOrange && item.color !== 'orange') ??\n !filters.hideOrange) &&\n ((filters.type !== 'any' && item.type === filters.type) ||\n !filters.type ||\n filters.type === 'any')\n ) {\n return true;\n }\n\n return false;\n });\n }\n\n return filteredItems;\n }\n\n #selectAll(): void {\n const selectedIds = this.#dataState.selectedIds ?? [];\n\n this.displayedItems.forEach((item) => {\n if (!item.selected) {\n item.selected = true;\n selectedIds.push(item.id);\n }\n });\n\n this.#dataState.selectedIds = selectedIds;\n this.#dataManagerSvc.updateDataState(this.#dataState, this.viewId);\n this.#changeDetector.markForCheck();\n }\n\n #clearAll(): void {\n const selectedIds = this.#dataState.selectedIds ?? [];\n\n this.displayedItems.forEach((item) => {\n if (item.selected) {\n const itemIndex = selectedIds.indexOf(item.id);\n item.selected = false;\n selectedIds.splice(itemIndex, 1);\n }\n });\n\n if (this.#dataState.onlyShowSelected) {\n this.displayedItems = [];\n }\n\n this.#dataState.selectedIds = selectedIds;\n this.#dataManagerSvc.updateDataState(this.#dataState, this.viewId);\n this.#changeDetector.markForCheck();\n }\n}\n","<sky-data-view [viewId]=\"viewId\">\n @if (isActive) {\n <sky-repeater expandMode=\"none\">\n @for (item of displayedItems; track item) {\n <sky-repeater-item\n [selectable]=\"true\"\n [(isSelected)]=\"item.selected\"\n (isSelectedChange)=\"onItemSelect($event, item)\"\n >\n <sky-repeater-item-title>\n {{ item.name }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ item.description }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n }\n </sky-repeater>\n }\n</sky-data-view>\n","import {\n ChangeDetectionStrategy,\n Component,\n OnInit,\n inject,\n} from '@angular/core';\nimport { SkyUIConfigService } from '@skyux/core';\nimport {\n SkyDataManagerModule,\n SkyDataManagerService,\n SkyDataManagerState,\n} from '@skyux/data-manager';\n\nimport { DATA_MANAGER_DEMO_DATA, DataManagerDemoRow } from './data';\nimport { FilterModalComponent } from './filter-modal.component';\nimport { Filters } from './filters';\nimport { ViewGridComponent } from './view-grid.component';\nimport { ViewRepeaterComponent } from './view-repeater.component';\n\n@Component({\n selector: 'app-data-manager-basic-example',\n templateUrl: './example.component.html',\n providers: [SkyDataManagerService, SkyUIConfigService],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyDataManagerModule, ViewGridComponent, ViewRepeaterComponent],\n})\nexport class DataManagerBasicExampleComponent implements OnInit {\n protected items: DataManagerDemoRow[] = DATA_MANAGER_DEMO_DATA;\n\n readonly #dataManagerSvc = inject(SkyDataManagerService);\n\n public ngOnInit(): void {\n this.#dataManagerSvc.initDataManager({\n activeViewId: 'repeaterView',\n dataManagerConfig: {\n filterModalComponent: FilterModalComponent,\n sortOptions: [\n {\n id: 'az',\n label: 'Name (A - Z)',\n descending: false,\n propertyName: 'name',\n },\n {\n id: 'za',\n label: 'Name (Z - A)',\n descending: true,\n propertyName: 'name',\n },\n ],\n },\n defaultDataState: new SkyDataManagerState({\n filterData: {\n filtersApplied: true,\n filters: {\n hideOrange: true,\n } satisfies Filters,\n },\n views: [\n {\n viewId: 'gridView',\n displayedColumnIds: ['selected', 'name', 'description'],\n },\n ],\n }),\n });\n }\n}\n","<sky-data-manager>\n <sky-data-manager-toolbar />\n <app-view-repeater [items]=\"items\" />\n <app-view-grid [items]=\"items\" />\n</sky-data-manager>\n","import { CommonModule } from '@angular/common';\nimport { Component, inject } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n ValidationErrors,\n Validators,\n} from '@angular/forms';\nimport { SkyDatepickerModule } from '@skyux/datetime';\nimport { SkyInputBoxModule } from '@skyux/forms';\n\ninterface DemoForm {\n startDate: FormControl<Date | null>;\n}\n\nfunction validateDate(\n control: AbstractControl<Date | null>,\n): ValidationErrors | null {\n const date = control.value;\n if (date instanceof Date) {\n const day = date?.getDay();\n\n return day !== undefined && (day === 0 || day === 6)\n ? {\n invalidWeekend: true,\n }\n : null;\n }\n return null;\n}\n\n@Component({\n selector: 'app-datetime-datepicker-basic-example',\n templateUrl: './example.component.html',\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n SkyDatepickerModule,\n SkyInputBoxModule,\n ],\n})\nexport class DatetimeDatepickerBasicExampleComponent {\n protected formGroup: FormGroup<DemoForm>;\n protected startDate: FormControl<Date | null>;\n protected hintText = 'Must be before your 1 year anniversary.';\n\n public helpPopoverContent =\n 'If you need help with registration, choose a date at least 8 business days after you arrive. The process takes up to 7 business days from the start date.';\n\n constructor() {\n this.startDate = new FormControl<Date | null>(new Date('10/12/2001'), {\n validators: [Validators.required, validateDate],\n });\n\n this.formGroup = inject(FormBuilder).group<DemoForm>({\n startDate: this.startDate,\n });\n }\n}\n","<div class=\"sky-padding-even-lg\">\n <form [formGroup]=\"formGroup\">\n <sky-input-box\n data-sky-id=\"datepicker-example\"\n labelText=\"Start date\"\n [helpPopoverContent]=\"helpPopoverContent\"\n [hintText]=\"hintText\"\n >\n <sky-datepicker>\n <input formControlName=\"startDate\" skyDatepickerInput type=\"text\" />\n </sky-datepicker>\n @if (startDate.errors?.['invalidWeekend']) {\n <sky-form-error\n errorName=\"invalidWeekend\"\n errorText=\"Start date must not be on a weekend.\"\n />\n }\n </sky-input-box>\n </form>\n\n <p>\n Selected date: <code>{{ startDate.value | json }}</code>\n </p>\n</div>\n","import { Component } from '@angular/core';\nimport { SkyDatePipeModule } from '@skyux/datetime';\n\n@Component({\n selector: 'app-datetime-date-pipe-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyDatePipeModule],\n})\nexport class DatetimeDatePipeBasicExampleComponent {\n protected myDate = new Date('11/05/1955');\n}\n","<div>{{ myDate | skyDate }}</div>\n<div>{{ myDate | skyDate: 'medium' }}</div>\n<div>{{ myDate | skyDate: 'medium' : 'es-MX' }}</div>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport { SkyDatepickerModule } from '@skyux/datetime';\nimport { SkyInputBoxModule } from '@skyux/forms';\n\n@Component({\n selector: 'app-datetime-datepicker-fuzzy-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyDatepickerModule,\n SkyInputBoxModule,\n ],\n})\nexport class DatetimeDatepickerFuzzyExampleComponent {\n protected formGroup: FormGroup;\n protected hintText =\n \"Include a partial date if you don't have the exact date.\";\n public helpPopoverContent =\n 'Your date of birth ensures that your benefits include the supplemental at-home services for your age group.';\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n dob: new FormControl(new Date(1955, 10, 5), {\n validators: Validators.required,\n }),\n });\n }\n\n protected get getFuzzyDateForDisplay(): string {\n return JSON.stringify(this.formGroup.get('dob')?.value);\n }\n}\n","<div class=\"sky-padding-even-lg\">\n <form [formGroup]=\"formGroup\">\n <sky-input-box\n data-sky-id=\"fuzzy-datepicker-example\"\n labelText=\"Date of birth\"\n [helpPopoverContent]=\"helpPopoverContent\"\n [hintText]=\"hintText\"\n >\n <sky-datepicker>\n <input\n formControlName=\"dob\"\n skyFuzzyDatepickerInput\n type=\"text\"\n [futureDisabled]=\"true\"\n />\n </sky-datepicker>\n </sky-input-box>\n </form>\n\n <p>\n Selected date: <code>{{ getFuzzyDateForDisplay }}</code>\n </p>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport {\n SkyDatepickerCalendarChange,\n SkyDatepickerCustomDate,\n SkyDatepickerModule,\n} from '@skyux/datetime';\nimport { SkyInputBoxModule } from '@skyux/forms';\n\nimport { Observable, of } from 'rxjs';\nimport { delay } from 'rxjs/operators';\n\n@Component({\n selector: 'app-datetime-datepicker-custom-dates-example',\n templateUrl: './example.component.html',\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n SkyDatepickerModule,\n SkyInputBoxModule,\n ],\n})\nexport class DatetimeDatepickerCustomDatesExampleComponent {\n protected formGroup: FormGroup;\n\n #formBuilder = inject(FormBuilder);\n\n constructor() {\n this.formGroup = this.#formBuilder.group({\n startDate: new FormControl(),\n });\n }\n\n protected onCalendarDateRangeChange(\n event: SkyDatepickerCalendarChange,\n ): void {\n if (event) {\n // Bind observable to `customDates` argument and simulate delay for async process to finish.\n // Normally, `getCustomDates()` would be replaced by an async call to fetch data.\n event.customDates = this.#getCustomDates(event).pipe(delay(2000));\n }\n }\n\n /**\n * Generate fake custom dates based on the date range returned from the event.\n * This is for examplenstration purposes only.\n */\n #getCustomDates(\n event: SkyDatepickerCalendarChange,\n ): Observable<SkyDatepickerCustomDate[]> {\n const getNextDate = function (startDate: Date, daysToAdd: number): Date {\n const newDate = new Date(startDate);\n newDate.setDate(newDate.getDate() + daysToAdd);\n return newDate;\n };\n\n const customDates: SkyDatepickerCustomDate[] = [];\n customDates.push({\n date: event.startDate,\n disabled: false,\n keyDate: true,\n keyDateText: ['Onboarding meeting'],\n });\n\n customDates.push({\n date: getNextDate(event.startDate, 8),\n disabled: false,\n keyDate: true,\n keyDateText: ['Department all hands'],\n });\n\n customDates.push({\n date: getNextDate(event.startDate, 9),\n disabled: false,\n keyDate: true,\n keyDateText: ['Company retreat'],\n });\n\n customDates.push({\n date: getNextDate(event.startDate, 10),\n disabled: true,\n keyDate: true,\n keyDateText: ['Federal holiday'],\n });\n\n customDates.push({\n date: getNextDate(event.startDate, 11),\n disabled: true,\n keyDate: false,\n keyDateText: [],\n });\n\n customDates.push({\n date: getNextDate(event.startDate, 12),\n disabled: false,\n keyDate: true,\n keyDateText: ['New hire review due'],\n });\n\n customDates.push({\n date: getNextDate(event.startDate, 13),\n disabled: false,\n keyDate: true,\n keyDateText: ['Key note speaker', 'Focus group'],\n });\n\n customDates.push({\n date: event.endDate,\n disabled: false,\n keyDate: true,\n keyDateText: ['Customer lunch and learn'],\n });\n\n return of(customDates);\n }\n}\n","<div class=\"sky-padding-even-lg\">\n <form [formGroup]=\"formGroup\">\n <sky-input-box labelText=\"Start date\">\n <sky-datepicker\n (calendarDateRangeChange)=\"onCalendarDateRangeChange($event)\"\n >\n <input formControlName=\"startDate\" skyDatepickerInput type=\"text\" />\n </sky-datepicker>\n </sky-input-box>\n </form>\n\n <p>\n Selected date: <code>{{ formGroup.value.startDate | json }}</code>\n </p>\n</div>\n","import { Component } from '@angular/core';\n\n@Component({\n standalone: true,\n selector: 'app-flyout',\n template: `\n <div class=\"sky-padding-even-xl\">\n <h2>Sample flyout</h2>\n <p>\n Flyouts can display large quantities of supplementary information\n related to a task, including:\n </p>\n <ul>\n <li>lists</li>\n <li>records</li>\n <li>analytics</li>\n </ul>\n </div>\n `,\n})\nexport class FlyoutComponent {}\n","import { Component, inject } from '@angular/core';\nimport { SkyFlyoutInstance, SkyFlyoutService } from '@skyux/flyout';\n\nimport { FlyoutComponent } from './flyout.component';\n\n@Component({\n standalone: true,\n selector: 'app-flyout-basic-example',\n templateUrl: './example.component.html',\n})\nexport class FlyoutBasicExampleComponent {\n #flyout: SkyFlyoutInstance<FlyoutComponent> | undefined;\n\n readonly #flyoutSvc = inject(SkyFlyoutService);\n\n protected closeAndRemoveFlyout(): void {\n if (this.#flyout?.isOpen) {\n this.#flyoutSvc.close();\n }\n\n this.#flyout = undefined;\n }\n\n protected openFlyoutWithCustomWidth(): void {\n this.#flyout = this.#flyoutSvc.open(FlyoutComponent, {\n ariaLabelledBy: 'flyout-title',\n ariaRole: 'dialog',\n defaultWidth: 350,\n maxWidth: 500,\n minWidth: 200,\n });\n\n this.#flyout.closed.subscribe(() => {\n this.#flyout = undefined;\n });\n }\n\n protected openSimpleFlyout(): void {\n this.#flyout = this.#flyoutSvc.open(FlyoutComponent, {\n ariaLabelledBy: 'flyout-title',\n ariaRole: 'dialog',\n });\n\n this.#flyout.closed.subscribe(() => {\n this.#flyout = undefined;\n });\n }\n}\n","<button\n class=\"sky-btn sky-btn-default sky-margin-inline-sm\"\n type=\"button\"\n (click)=\"openSimpleFlyout()\"\n>\n Open flyout\n</button>\n\n<button\n class=\"sky-btn sky-btn-default sky-margin-inline-sm\"\n type=\"button\"\n (click)=\"openFlyoutWithCustomWidth()\"\n>\n Open flyout with custom width\n</button>\n\n<button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"closeAndRemoveFlyout()\"\n>\n Close flyout programmatically\n</button>\n","import { Component, inject } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n ValidationErrors,\n Validators,\n} from '@angular/forms';\nimport { SkyTimepickerModule, SkyTimepickerTimeOutput } from '@skyux/datetime';\nimport { SkyInputBoxModule } from '@skyux/forms';\n\ninterface DemoForm {\n time: FormControl<SkyTimepickerTimeOutput | string>;\n}\n\nfunction isTimepickerOutput(value: unknown): value is SkyTimepickerTimeOutput {\n return !!(value && typeof value === 'object' && 'minute' in value);\n}\n\nfunction validateTime(\n control: AbstractControl<SkyTimepickerTimeOutput | string>,\n): ValidationErrors | null {\n const minute = isTimepickerOutput(control.value)\n ? control.value.minute\n : undefined;\n\n return minute && minute % 15 !== 0 ? { invalidMinute: true } : null;\n}\n\n@Component({\n selector: 'app-datetime-timepicker-basic-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyInputBoxModule,\n SkyTimepickerModule,\n ],\n})\nexport class DatetimeTimepickerBasicExampleComponent {\n protected formGroup: FormGroup<DemoForm>;\n protected time: FormControl<SkyTimepickerTimeOutput | string>;\n\n protected hintText = 'Choose a time that allows for late arrivals.';\n\n protected helpPopoverContent =\n 'Allow time to complete all activities that your team signed up for. All activities take about 30 minutes, except the ropes course, which takes 60 minutes.';\n\n constructor() {\n this.time = new FormControl('2:45', {\n nonNullable: true,\n validators: [Validators.required, validateTime],\n });\n\n this.formGroup = inject(FormBuilder).group<DemoForm>({\n time: this.time,\n });\n }\n}\n","<div class=\"sky-padding-even-lg\">\n <form [formGroup]=\"formGroup\">\n <sky-input-box\n labelText=\"Start time\"\n [helpPopoverContent]=\"helpPopoverContent\"\n [hintText]=\"hintText\"\n >\n <sky-timepicker #timepicker>\n <input\n formControlName=\"time\"\n timeFormat=\"hh\"\n [skyTimepickerInput]=\"timepicker\"\n />\n </sky-timepicker>\n @if (time.errors?.['invalidMinute']) {\n <sky-form-error\n errorName=\"invalidMinute\"\n errorText=\"Start time must be a 15-minute increment.\"\n />\n }\n </sky-input-box>\n </form>\n</div>\n","import { Component } from '@angular/core';\n\n@Component({\n standalone: true,\n selector: 'app-flyout',\n template: `\n <div class=\"sky-padding-even-xl\">\n <h2>Sample flyout</h2>\n <p>\n Flyouts can display large quantities of supplementary information\n related to a task, including:\n </p>\n <ul>\n <li>lists</li>\n <li>records</li>\n <li>analytics</li>\n </ul>\n </div>\n `,\n})\nexport class FlyoutComponent {}\n","import { Component, inject } from '@angular/core';\nimport { SkyFlyoutInstance, SkyFlyoutService } from '@skyux/flyout';\n\nimport { FlyoutComponent } from './flyout.component';\n\n@Component({\n standalone: true,\n selector: 'app-flyout-custom-headers-example',\n templateUrl: './example.component.html',\n})\nexport class FlyoutCustomHeadersExampleComponent {\n #flyout: SkyFlyoutInstance<FlyoutComponent> | undefined;\n\n readonly #flyoutSvc = inject(SkyFlyoutService);\n\n protected openFlyoutWithIterators(): void {\n this.#flyout = this.#flyoutSvc.open(FlyoutComponent, {\n ariaLabelledBy: 'flyout-title',\n ariaRole: 'dialog',\n showIterator: true,\n });\n\n this.#flyout.iteratorNextButtonClick.subscribe(() => {\n alert('Next iterator button clicked!');\n });\n\n this.#flyout.iteratorPreviousButtonClick.subscribe(() => {\n alert('Previous iterator button clicked!');\n });\n\n this.#flyout.closed.subscribe(() => {\n this.#flyout = undefined;\n });\n }\n\n protected openFlyoutWithRoutePermalink(): void {\n this.#flyout = this.#flyoutSvc.open(FlyoutComponent, {\n ariaLabelledBy: 'flyout-title',\n ariaRole: 'dialog',\n permalink: {\n label: 'Go to Components page',\n route: {\n commands: ['/components'],\n extras: {\n fragment: 'helloWorld',\n queryParams: {\n foo: 'bar',\n },\n },\n },\n },\n });\n\n this.#flyout.closed.subscribe(() => {\n this.#flyout = undefined;\n });\n }\n\n protected openFlyoutWithUrlPermalink(): void {\n this.#flyout = this.#flyoutSvc.open(FlyoutComponent, {\n ariaLabelledBy: 'flyout-title',\n ariaRole: 'dialog',\n permalink: {\n label: `Visit blackbaud.com`,\n url: 'http://www.blackbaud.com',\n },\n });\n\n this.#flyout.closed.subscribe(() => {\n this.#flyout = undefined;\n });\n }\n}\n","<button\n class=\"sky-btn sky-btn-default sky-margin-inline-sm\"\n type=\"button\"\n (click)=\"openFlyoutWithUrlPermalink()\"\n>\n Open flyout with a URL permalink\n</button>\n\n<button\n class=\"sky-btn sky-btn-default sky-margin-inline-sm\"\n type=\"button\"\n (click)=\"openFlyoutWithRoutePermalink()\"\n>\n Open flyout with an Angular routing permalink\n</button>\n\n<button\n class=\"sky-btn sky-btn-default sky-margin-inline-sm\"\n type=\"button\"\n (click)=\"openFlyoutWithIterators()\"\n>\n Open flyout with iterators\n</button>\n","import { Component } from '@angular/core';\nimport { SkyErrorModule } from '@skyux/errors';\n\n@Component({\n selector: 'app-errors-error-embedded-example',\n templateUrl: './example.component.html',\n imports: [SkyErrorModule],\n})\nexport class ErrorsErrorEmbeddedExampleComponent {\n protected customAction(): void {\n alert('action clicked!');\n }\n}\n","<sky-error errorType=\"broken\">\n <sky-error-action>\n <button class=\"sky-btn sky-btn-link\" type=\"button\" (click)=\"customAction()\">\n Try again\n </button>\n </sky-error-action>\n</sky-error>\n\n<sky-error errorType=\"notfound\">\n <sky-error-action>\n <button class=\"sky-btn sky-btn-link\" type=\"button\" (click)=\"customAction()\">\n Go back\n </button>\n </sky-error-action>\n</sky-error>\n\n<sky-error errorType=\"construction\">\n <sky-error-action>\n <button class=\"sky-btn sky-btn-link\" type=\"button\" (click)=\"customAction()\">\n Go back\n </button>\n </sky-error-action>\n</sky-error>\n\n<sky-error errorType=\"security\">\n <sky-error-action>\n <button class=\"sky-btn sky-btn-link\" type=\"button\" (click)=\"customAction()\">\n Go back\n </button>\n </sky-error-action>\n</sky-error>\n\n<sky-error>\n <sky-error-image>\n <img\n role=\"presentation\"\n src=\"data:image/png;base64,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\"\n />\n </sky-error-image>\n <sky-error-title> Custom error with a custom image. </sky-error-title>\n <sky-error-description> Custom description. </sky-error-description>\n <sky-error-action>\n <button class=\"sky-btn sky-btn-link\" type=\"button\" (click)=\"customAction()\">\n Custom action\n </button>\n </sky-error-action>\n</sky-error>\n\n<sky-error errorType=\"broken\">\n <sky-error-title [replaceDefaultTitle]=\"true\">\n Custom error with a default image.\n </sky-error-title>\n <sky-error-description [replaceDefaultDescription]=\"true\">\n Custom description.\n </sky-error-description>\n <sky-error-action>\n <button class=\"sky-btn sky-btn-link\" type=\"button\" (click)=\"customAction()\">\n Custom action\n </button>\n </sky-error-action>\n</sky-error>\n","import { Component, inject } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n ValidationErrors,\n} from '@angular/forms';\nimport { SkyCheckboxModule } from '@skyux/forms';\n\n@Component({\n selector: 'app-forms-checkbox-basic-example',\n templateUrl: './example.component.html',\n imports: [FormsModule, ReactiveFormsModule, SkyCheckboxModule],\n})\nexport class FormsCheckboxBasicExampleComponent {\n #formBuilder: FormBuilder = inject(FormBuilder);\n\n protected formGroup: FormGroup;\n protected contactMethod: FormGroup;\n\n constructor() {\n this.contactMethod = this.#formBuilder.group({\n email: new FormControl(false),\n phone: new FormControl(false),\n text: new FormControl(false),\n });\n\n this.formGroup = this.#formBuilder.group({\n contactMethod: this.contactMethod,\n terms: new FormControl(false),\n });\n\n this.contactMethod.setValidators(\n (control: AbstractControl): ValidationErrors | null => {\n const group = control as FormGroup;\n const email = group.controls['email'];\n const phone = group.controls['phone'];\n const text = group.controls['text'];\n\n if (email.value && !phone.value && !text.value) {\n return { emailOnly: true };\n } else {\n return null;\n }\n },\n );\n }\n\n protected onSubmit(): void {\n this.formGroup.markAllAsTouched();\n\n console.log(this.formGroup.value);\n }\n}\n","<div class=\"sky-padding-even-xl\">\n <form [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\">\n <sky-checkbox-group\n data-sky-id=\"checkbox-group\"\n headingText=\"Contact method\"\n headingStyle=\"5\"\n helpPopoverContent=\"We use your contact info to keep you informed on current events. We will not sell your information.\"\n hintText=\"Please select at least one phone-based method.\"\n [formGroup]=\"contactMethod\"\n [required]=\"true\"\n [stacked]=\"true\"\n >\n <sky-checkbox formControlName=\"email\" labelText=\"Email\" />\n <sky-checkbox formControlName=\"phone\" labelText=\"Phone\" />\n <sky-checkbox formControlName=\"text\" labelText=\"Text\" />\n @if (contactMethod.errors?.['emailOnly']) {\n <sky-form-error\n errorName=\"emailOnly\"\n errorText=\"Email cannot be the only contact method.\"\n />\n }\n </sky-checkbox-group>\n <sky-checkbox\n data-sky-id=\"single-checkbox\"\n formControlName=\"terms\"\n labelText=\"I agree to the terms and conditions\"\n [required]=\"true\"\n [stacked]=\"true\"\n />\n <button class=\"sky-btn sky-btn-primary\" type=\"submit\">Submit</button>\n </form>\n</div>\n","import { Component, inject } from '@angular/core';\nimport { SkyErrorModalService } from '@skyux/errors';\n\n@Component({\n standalone: true,\n selector: 'app-errors-error-modal-example',\n templateUrl: './example.component.html',\n})\nexport class ErrorsErrorModalExampleComponent {\n readonly #errorSvc = inject(SkyErrorModalService);\n\n public openErrorModal(): void {\n this.#errorSvc.open({\n errorTitle: 'Something went wrong.',\n errorDescription: 'Close the modal, and come back later.',\n errorCloseText: 'Close',\n });\n }\n}\n","<button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"openErrorModal()\"\n>\n Open error modal\n</button>\n","import { Component, inject } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n ValidationErrors,\n} from '@angular/forms';\nimport { SkyCheckboxModule } from '@skyux/forms';\n\n@Component({\n selector: 'app-forms-checkbox-help-key-example',\n templateUrl: './example.component.html',\n imports: [FormsModule, ReactiveFormsModule, SkyCheckboxModule],\n})\nexport class FormsCheckboxHelpKeyExampleComponent {\n #formBuilder: FormBuilder = inject(FormBuilder);\n\n protected formGroup: FormGroup;\n protected contactMethod: FormGroup;\n\n constructor() {\n this.contactMethod = this.#formBuilder.group({\n email: new FormControl(false),\n phone: new FormControl(false),\n text: new FormControl(false),\n });\n\n this.formGroup = this.#formBuilder.group({\n contactMethod: this.contactMethod,\n terms: new FormControl(false),\n });\n\n this.contactMethod.setValidators(\n (control: AbstractControl): ValidationErrors | null => {\n const group = control as FormGroup;\n const email = group.controls['email'];\n const phone = group.controls['phone'];\n const text = group.controls['text'];\n\n if (email.value && !phone.value && !text.value) {\n return { emailOnly: true };\n } else {\n return null;\n }\n },\n );\n }\n\n protected onSubmit(): void {\n this.formGroup.markAllAsTouched();\n\n console.log(this.formGroup.value);\n }\n}\n","<div class=\"sky-padding-even-xl\">\n <form [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\">\n <sky-checkbox-group\n data-sky-id=\"checkbox-group\"\n headingText=\"Contact method\"\n headingStyle=\"5\"\n helpKey=\"contact-help\"\n hintText=\"Please select at least one phone-based method.\"\n [formGroup]=\"contactMethod\"\n [required]=\"true\"\n [stacked]=\"true\"\n >\n <sky-checkbox formControlName=\"email\" labelText=\"Email\" />\n <sky-checkbox formControlName=\"phone\" labelText=\"Phone\" />\n <sky-checkbox formControlName=\"text\" labelText=\"Text\" />\n @if (contactMethod.errors?.['emailOnly']) {\n <sky-form-error\n errorName=\"emailOnly\"\n errorText=\"Email cannot be the only contact method.\"\n />\n }\n </sky-checkbox-group>\n <sky-checkbox\n data-sky-id=\"single-checkbox\"\n formControlName=\"terms\"\n helpKey=\"terms-help\"\n labelText=\"I agree to the terms and conditions\"\n [required]=\"true\"\n [stacked]=\"true\"\n />\n <button class=\"sky-btn sky-btn-primary\" type=\"submit\">Submit</button>\n </form>\n</div>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyFieldGroupModule, SkyInputBoxModule } from '@skyux/forms';\nimport { SkyFluidGridModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-forms-field-group-help-key-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyFieldGroupModule,\n SkyFluidGridModule,\n SkyInputBoxModule,\n ],\n})\nexport class FormsFieldGroupHelpKeyExampleComponent {\n #formBuilder: FormBuilder = inject(FormBuilder);\n\n protected formGroup: FormGroup;\n protected states = [\n 'AK',\n 'AZ',\n 'AL',\n 'AR',\n 'CA',\n 'CO',\n 'CT',\n 'DE',\n 'DC',\n 'FL',\n 'GA',\n 'HI',\n 'ID',\n 'IL',\n 'IN',\n 'IA',\n 'KS',\n 'KY',\n 'LA',\n 'ME',\n 'MD',\n 'MA',\n 'MI',\n 'MN',\n 'MS',\n 'MO',\n 'MT',\n 'NE',\n 'NV',\n 'NH',\n 'NJ',\n 'NM',\n 'NY',\n 'NC',\n 'ND',\n 'OH',\n 'OK',\n 'OR',\n 'PA',\n 'RI',\n 'SC',\n 'SD',\n 'TN',\n 'TX',\n 'UT',\n 'VT',\n 'VA',\n 'WA',\n 'WV',\n 'WI',\n 'WY',\n ];\n\n constructor() {\n this.formGroup = this.#formBuilder.group({\n streetAddress: this.#formBuilder.control(undefined),\n city: this.#formBuilder.control(undefined),\n state: this.#formBuilder.control(undefined),\n zipCode: this.#formBuilder.control(undefined),\n });\n }\n}\n","<div class=\"sky-padding-even-lg\">\n <form [formGroup]=\"formGroup\">\n <sky-field-group\n headingText=\"Address\"\n helpKey=\"address-help\"\n hintText=\"We use this address for your end-of-year statement.\"\n [headingStyle]=\"4\"\n >\n <sky-fluid-grid gutterSize=\"small\" [disableMargin]=\"true\">\n <sky-row>\n <sky-column [screenXSmall]=\"12\">\n <sky-input-box labelText=\"Street address\" stacked=\"true\">\n <input\n formControlName=\"streetAddress\"\n spellcheck=\"false\"\n type=\"text\"\n />\n </sky-input-box>\n </sky-column>\n </sky-row>\n <sky-row>\n <sky-column [screenXSmall]=\"5\">\n <sky-input-box labelText=\"City\">\n <input formControlName=\"city\" spellcheck=\"false\" type=\"text\" />\n </sky-input-box>\n </sky-column>\n <sky-column [screenXSmall]=\"5\">\n <sky-input-box labelText=\"State\">\n <select formControlName=\"state\">\n <option [attr.value]=\"undefined\"></option>\n @for (state of states; track state) {\n <option value=\"state\">\n {{ state }}\n </option>\n }\n </select>\n </sky-input-box>\n </sky-column>\n <sky-column [screenXSmall]=\"2\">\n <sky-input-box labelText=\"Zip code\">\n <input formControlName=\"zipCode\" maxlength=\"5\" type=\"text\" />\n </sky-input-box>\n </sky-column>\n </sky-row>\n </sky-fluid-grid>\n </sky-field-group>\n </form>\n</div>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyCheckboxModule } from '@skyux/forms';\n\n@Component({\n selector: 'app-forms-checkbox-icon-group-example',\n templateUrl: './example.component.html',\n imports: [FormsModule, ReactiveFormsModule, SkyCheckboxModule],\n})\nexport class FormsCheckboxIconGroupExampleComponent {\n protected formGroup: FormGroup;\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n bold: new FormControl(false),\n italic: new FormControl(false),\n underline: new FormControl(false),\n });\n }\n\n public onSubmit(): void {\n console.log(this.formGroup.value);\n }\n}\n","<div class=\"sky-padding-even-xl\">\n <form [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\">\n <sky-checkbox-group\n headingText=\"Text formatting\"\n [formGroup]=\"formGroup\"\n [headingHidden]=\"true\"\n [stacked]=\"true\"\n >\n <sky-checkbox\n formControlName=\"bold\"\n icon=\"bold\"\n labelHidden=\"true\"\n labelText=\"Bold\"\n />\n <sky-checkbox\n formControlName=\"italic\"\n icon=\"italic\"\n labelHidden=\"true\"\n labelText=\"Italic\"\n />\n <sky-checkbox\n formControlName=\"underline\"\n icon=\"underline\"\n labelHidden=\"true\"\n labelText=\"Underline\"\n />\n </sky-checkbox-group>\n <button class=\"sky-btn sky-btn-primary\" type=\"submit\">Submit</button>\n </form>\n</div>\n","import { Component, inject } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n ValidationErrors,\n Validators,\n} from '@angular/forms';\nimport {\n SkyFileAttachmentClick,\n SkyFileAttachmentModule,\n SkyFileItem,\n} from '@skyux/forms';\n\n/**\n * Demonstrates how to create a custom validator function for your form control.\n */\nfunction customValidator(\n control: AbstractControl<SkyFileItem | null | undefined>,\n): ValidationErrors | null {\n const fileItem = control.value;\n\n return fileItem?.file?.name.startsWith('a')\n ? { invalidStartingLetter: true }\n : null;\n}\n\n@Component({\n selector: 'app-forms-file-attachment-basic-example',\n templateUrl: './example.component.html',\n imports: [FormsModule, ReactiveFormsModule, SkyFileAttachmentModule],\n})\nexport class FormsFileAttachmentBasicExampleComponent {\n protected attachment: FormControl<SkyFileItem | null | undefined>;\n\n protected formGroup: FormGroup<{\n attachment: FormControl<SkyFileItem | null | undefined>;\n }>;\n\n protected maxFileSize = 4000000;\n\n constructor() {\n this.attachment = new FormControl(undefined, {\n validators: [Validators.required, customValidator],\n });\n\n this.formGroup = inject(FormBuilder).group({\n attachment: this.attachment,\n });\n }\n\n protected onFileClick($event: SkyFileAttachmentClick): void {\n // Ensure we are only attempting to navigate to locally updated data for download.\n if ($event.file.url.startsWith('data:')) {\n const link = document.createElement('a');\n link.download = $event.file.file.name;\n link.href = $event.file.url;\n link.click();\n }\n }\n}\n","<form [formGroup]=\"formGroup\">\n <sky-file-attachment\n acceptedTypes=\"application/pdf,image/jpeg,image/png,image/gif\"\n data-sky-id=\"birth-certificate\"\n formControlName=\"attachment\"\n helpPopoverTitle=\"Requirements\"\n hintText=\"Attach a .pdf, .gif, .png, or .jpeg file.\"\n labelText=\"Birth certificate\"\n [helpPopoverContent]=\"helpInlinePopoverRef\"\n [maxFileSize]=\"maxFileSize\"\n (fileClick)=\"onFileClick($event)\"\n >\n @if (attachment.errors?.['invalidStartingLetter']) {\n <sky-form-error\n errorName=\"invalidStartingLetter\"\n errorText=\"You may not upload a file that begins with the letter 'a'.\"\n />\n }\n </sky-file-attachment>\n</form>\n\n<ng-template #helpInlinePopoverRef>\n Make sure the birth certificate includes:\n <ul>\n <li>Full name of child</li>\n <li>Birth date</li>\n <li>Place of birth</li>\n <li>Name and signature of the physician or midwife</li>\n <li>Registration or certificate number</li>\n </ul>\n</ng-template>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyFieldGroupModule, SkyInputBoxModule } from '@skyux/forms';\nimport { SkyFluidGridModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-forms-field-group-basic-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyFieldGroupModule,\n SkyFluidGridModule,\n SkyInputBoxModule,\n ],\n})\nexport class FormsFieldGroupBasicExampleComponent {\n #formBuilder: FormBuilder = inject(FormBuilder);\n\n protected formGroup: FormGroup;\n protected helpPopoverContent =\n 'We use your address to validate your application with regulatory agencies and to send correspondence related to your application.';\n\n protected states = [\n 'AK',\n 'AZ',\n 'AL',\n 'AR',\n 'CA',\n 'CO',\n 'CT',\n 'DE',\n 'DC',\n 'FL',\n 'GA',\n 'HI',\n 'ID',\n 'IL',\n 'IN',\n 'IA',\n 'KS',\n 'KY',\n 'LA',\n 'ME',\n 'MD',\n 'MA',\n 'MI',\n 'MN',\n 'MS',\n 'MO',\n 'MT',\n 'NE',\n 'NV',\n 'NH',\n 'NJ',\n 'NM',\n 'NY',\n 'NC',\n 'ND',\n 'OH',\n 'OK',\n 'OR',\n 'PA',\n 'RI',\n 'SC',\n 'SD',\n 'TN',\n 'TX',\n 'UT',\n 'VT',\n 'VA',\n 'WA',\n 'WV',\n 'WI',\n 'WY',\n ];\n\n constructor() {\n this.formGroup = this.#formBuilder.group({\n streetAddress: this.#formBuilder.control(undefined),\n city: this.#formBuilder.control(undefined),\n state: this.#formBuilder.control(undefined),\n zipCode: this.#formBuilder.control(undefined),\n });\n }\n}\n","<div class=\"sky-padding-even-lg\">\n <form [formGroup]=\"formGroup\">\n <sky-field-group\n headingText=\"Address\"\n hintText=\"We use this address for your end-of-year statement.\"\n [headingStyle]=\"4\"\n [helpPopoverContent]=\"helpPopoverContent\"\n >\n <sky-fluid-grid gutterSize=\"small\" [disableMargin]=\"true\">\n <sky-row>\n <sky-column [screenXSmall]=\"12\">\n <sky-input-box labelText=\"Street address\" stacked=\"true\">\n <input\n formControlName=\"streetAddress\"\n spellcheck=\"false\"\n type=\"text\"\n />\n </sky-input-box>\n </sky-column>\n </sky-row>\n <sky-row>\n <sky-column [screenXSmall]=\"5\">\n <sky-input-box labelText=\"City\">\n <input formControlName=\"city\" spellcheck=\"false\" type=\"text\" />\n </sky-input-box>\n </sky-column>\n <sky-column [screenXSmall]=\"5\">\n <sky-input-box labelText=\"State\">\n <select formControlName=\"state\">\n <option [attr.value]=\"undefined\"></option>\n @for (state of states; track state) {\n <option value=\"state\">\n {{ state }}\n </option>\n }\n </select>\n </sky-input-box>\n </sky-column>\n <sky-column [screenXSmall]=\"2\">\n <sky-input-box labelText=\"Zip code\">\n <input formControlName=\"zipCode\" maxlength=\"5\" type=\"text\" />\n </sky-input-box>\n </sky-column>\n </sky-row>\n </sky-fluid-grid>\n </sky-field-group>\n </form>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { Component, inject } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n ValidationErrors,\n Validators,\n} from '@angular/forms';\nimport { SkyFileDropModule, SkyFileItem, SkyFileLink } from '@skyux/forms';\nimport { SkyStatusIndicatorModule } from '@skyux/indicators';\n\n/**\n * Demonstrates how to create a custom validator function for your form control.\n */\nfunction customValidator(\n control: AbstractControl<(SkyFileItem | SkyFileLink)[] | null | undefined>,\n): ValidationErrors | null {\n if (control.value !== undefined && control.value !== null) {\n if (control.value.length > 3) {\n return { maxNumberOfFilesReached: true };\n }\n }\n return null;\n}\n\n@Component({\n selector: 'app-forms-file-drop-basic-example',\n templateUrl: './example.component.html',\n imports: [\n SkyFileDropModule,\n SkyStatusIndicatorModule,\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n ],\n})\nexport class FormsFileDropBasicExampleComponent {\n protected acceptedTypes = 'image/png,image/jpeg';\n protected hintText = 'Upload up to 3 files under 50MB.';\n protected inlineHelpContent =\n 'Your logo appears in places such as authentication pages, student and parent portals, and extracurricular home pages.';\n protected labelText = 'Logo image';\n protected maxFileSize = 5242880;\n protected stacked = 'true';\n\n public fileDrop = new FormControl<\n (SkyFileItem | SkyFileLink)[] | null | undefined\n >(undefined, [Validators.required, customValidator]);\n public formGroup: FormGroup = inject(FormBuilder).group({\n fileDrop: this.fileDrop,\n });\n\n protected deleteFile(file: SkyFileItem | SkyFileLink): void {\n const index = this.fileDrop.value?.indexOf(file);\n\n if (index !== undefined && index !== -1) {\n this.fileDrop.value?.splice(index, 1);\n /*\n If you are adding custom validation through the form control,\n be sure to include this line after deleting a file from the form.\n */\n this.fileDrop.updateValueAndValidity();\n }\n // To ensure that empty arrays throw required errors, include this check.\n if (this.fileDrop.value?.length === 0) {\n this.fileDrop.setValue(null);\n }\n }\n\n protected validateFile(file: SkyFileItem): string | undefined {\n return file.file.name.startsWith('a')\n ? 'Upload a file that does not begin with the letter \"a\"'\n : undefined;\n }\n}\n","<form [formGroup]=\"formGroup\">\n <sky-file-drop\n data-sky-id=\"logo-upload\"\n linkUploadHintText=\"Start with http:// or https://\"\n formControlName=\"fileDrop\"\n [acceptedTypes]=\"acceptedTypes\"\n [allowLinks]=\"true\"\n [helpPopoverContent]=\"inlineHelpContent\"\n [hintText]=\"hintText\"\n [labelText]=\"labelText\"\n [maxFileSize]=\"maxFileSize\"\n [stacked]=\"stacked\"\n [validateFn]=\"validateFile\"\n >\n @if (fileDrop.errors?.['maxNumberOfFilesReached']) {\n <sky-form-error\n errorName=\"maxNumberOfFilesReached\"\n errorText=\"Do not upload more than 3 files.\"\n />\n }\n </sky-file-drop>\n</form>\n\n@for (file of fileDrop.value; track file) {\n <sky-file-item [fileItem]=\"file\" (deleteFile)=\"deleteFile($event)\" />\n}\n","import { Component, inject } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n ValidationErrors,\n Validators,\n} from '@angular/forms';\nimport {\n SkyFileAttachmentClick,\n SkyFileAttachmentModule,\n SkyFileItem,\n} from '@skyux/forms';\n\n/**\n * Demonstrates how to create a custom validator function for your form control.\n */\nfunction customValidator(\n control: AbstractControl<SkyFileItem | null | undefined>,\n): ValidationErrors | null {\n const fileItem = control.value;\n\n return fileItem?.file?.name.startsWith('a')\n ? { invalidStartingLetter: true }\n : null;\n}\n\n@Component({\n selector: 'app-forms-file-attachment-help-key-example',\n templateUrl: './example.component.html',\n imports: [FormsModule, ReactiveFormsModule, SkyFileAttachmentModule],\n})\nexport class FormsFileAttachmentHelpKeyExampleComponent {\n protected attachment: FormControl<SkyFileItem | null | undefined>;\n\n protected formGroup: FormGroup<{\n attachment: FormControl<SkyFileItem | null | undefined>;\n }>;\n\n protected maxFileSize = 4000000;\n\n constructor() {\n this.attachment = new FormControl(undefined, {\n validators: [Validators.required, customValidator],\n });\n\n this.formGroup = inject(FormBuilder).group({\n attachment: this.attachment,\n });\n }\n\n protected onFileClick($event: SkyFileAttachmentClick): void {\n // Ensure we are only attempting to navigate to locally updated data for download.\n if ($event.file.url.startsWith('data:')) {\n const link = document.createElement('a');\n link.download = $event.file.file.name;\n link.href = $event.file.url;\n link.click();\n }\n }\n}\n","<form [formGroup]=\"formGroup\">\n <sky-file-attachment\n acceptedTypes=\"application/pdf,image/jpeg,image/png,image/gif\"\n formControlName=\"attachment\"\n helpKey=\"file-help\"\n hintText=\"Attach a .pdf, .gif, .png, or .jpeg file.\"\n labelText=\"Birth certificate\"\n [maxFileSize]=\"maxFileSize\"\n (fileClick)=\"onFileClick($event)\"\n >\n @if (attachment.errors?.['invalidStartingLetter']) {\n <sky-form-error\n errorName=\"invalidStartingLetter\"\n errorText=\"You may not upload a file that begins with the letter 'a'.\"\n />\n }\n </sky-file-attachment>\n</form>\n","import { Component } from '@angular/core';\nimport {\n SkyFileDropChange,\n SkyFileDropModule,\n SkyFileItem,\n SkyFileLink,\n} from '@skyux/forms';\nimport { SkyStatusIndicatorModule } from '@skyux/indicators';\n\n@Component({\n selector: 'app-forms-file-drop-help-key-example',\n templateUrl: './example.component.html',\n imports: [SkyFileDropModule, SkyStatusIndicatorModule],\n})\nexport class FormsFileDropHelpKeyExampleComponent {\n protected acceptedTypes = 'image/png,image/jpeg';\n protected allItems: (SkyFileItem | SkyFileLink)[] = [];\n protected hintText = '5 MB maximum';\n protected labelText = 'Logo image';\n protected maxFileSize = 5242880;\n protected rejectedFiles: SkyFileItem[] = [];\n protected required = true;\n protected stacked = 'true';\n\n #filesToUpload: SkyFileItem[] = [];\n #linksToUpload: SkyFileLink[] = [];\n\n protected deleteFile(file: SkyFileItem | SkyFileLink): void {\n this.#removeFromArray(this.allItems, file);\n this.#removeFromArray(this.#filesToUpload, file);\n this.#removeFromArray(this.#linksToUpload, file);\n }\n\n protected onFilesChanged(change: SkyFileDropChange): void {\n this.#filesToUpload = this.#filesToUpload.concat(change.files);\n this.rejectedFiles = change.rejectedFiles;\n this.allItems = this.allItems.concat(change.files);\n }\n\n protected onLinkChanged(change: SkyFileLink): void {\n this.#linksToUpload = this.#linksToUpload.concat(change);\n this.allItems = this.allItems.concat(change);\n }\n\n protected validateFile(file: SkyFileItem): string | undefined {\n return file.file.name.startsWith('a')\n ? 'Upload a file that does not begin with the letter \"a\"'\n : undefined;\n }\n\n #removeFromArray(\n items: (SkyFileItem | SkyFileLink)[],\n obj: SkyFileItem | SkyFileLink,\n ): void {\n if (items) {\n const index = items.indexOf(obj);\n\n if (index !== -1) {\n items.splice(index, 1);\n }\n }\n }\n}\n","<sky-file-drop\n helpKey=\"file-help\"\n linkUploadHintText=\"Start with http:// or https://\"\n [acceptedTypes]=\"acceptedTypes\"\n [allowLinks]=\"true\"\n [hintText]=\"hintText\"\n [labelText]=\"labelText\"\n [maxFileSize]=\"maxFileSize\"\n [required]=\"required\"\n [stacked]=\"stacked\"\n [validateFn]=\"validateFile\"\n (filesChanged)=\"onFilesChanged($event)\"\n (linkChanged)=\"onLinkChanged($event)\"\n/>\n@for (file of allItems; track file) {\n <div>\n <sky-file-item [fileItem]=\"file\" (deleteFile)=\"deleteFile($event)\" />\n </div>\n}\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n ValidationErrors,\n Validators,\n} from '@angular/forms';\nimport { SkyDatepickerModule } from '@skyux/datetime';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyStatusIndicatorModule } from '@skyux/indicators';\nimport { SkyFluidGridModule } from '@skyux/layout';\nimport { SkyValidators } from '@skyux/validation';\n\n@Component({\n selector: 'app-forms-input-box-basic-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyDatepickerModule,\n SkyFluidGridModule,\n SkyInputBoxModule,\n SkyStatusIndicatorModule,\n ],\n})\nexport class FormsInputBoxBasicExampleComponent {\n protected favoriteColor: FormControl<string | null>;\n\n protected formGroup: FormGroup<{\n firstName: FormControl<string | null>;\n lastName: FormControl<string | null>;\n bio: FormControl<string | null>;\n email: FormControl<string | null>;\n dob: FormControl<string | null>;\n favoriteColor: FormControl<string | null>;\n }>;\n\n constructor() {\n this.favoriteColor = new FormControl('none', [\n (control): ValidationErrors | null => {\n if (control.value === 'invalid') {\n return { invalid: true };\n }\n\n return null;\n },\n ]);\n\n this.formGroup = inject(FormBuilder).group({\n firstName: new FormControl(''),\n lastName: new FormControl('', Validators.required),\n bio: new FormControl(''),\n email: new FormControl('', [Validators.required, SkyValidators.email]),\n dob: new FormControl('', Validators.required),\n favoriteColor: this.favoriteColor,\n });\n }\n}\n","<div class=\"sky-padding-even-lg\">\n <form [formGroup]=\"formGroup\">\n <sky-fluid-grid gutterSize=\"small\" [disableMargin]=\"false\">\n <sky-row>\n <sky-column [screenSmall]=\"12\">\n <h2>New member form</h2>\n </sky-column>\n </sky-row>\n <sky-row>\n <sky-column [screenSmall]=\"12\" [screenMedium]=\"6\">\n <sky-input-box\n data-sky-id=\"input-box-first-name\"\n helpKey=\"first-name-help\"\n labelText=\"First name\"\n stacked=\"true\"\n >\n <input formControlName=\"firstName\" spellcheck=\"false\" type=\"text\" />\n </sky-input-box>\n </sky-column>\n <sky-column [screenSmall]=\"12\" [screenMedium]=\"6\">\n <sky-input-box\n data-sky-id=\"input-box-last-name\"\n labelText=\"Last name\"\n stacked=\"true\"\n >\n <input\n class=\"last-name-input-box\"\n formControlName=\"lastName\"\n spellcheck=\"false\"\n type=\"text\"\n />\n </sky-input-box>\n </sky-column>\n </sky-row>\n <sky-row>\n <sky-column [screenSmall]=\"12\">\n <sky-input-box\n characterLimit=\"250\"\n data-sky-id=\"input-box-bio\"\n hintText=\"A brief description of the member's background, such as hometown, school, hobbies, etc.\"\n labelText=\"Bio\"\n stacked=\"true\"\n >\n <textarea formControlName=\"bio\"></textarea>\n </sky-input-box>\n </sky-column>\n </sky-row>\n <sky-row>\n <sky-column [screenSmall]=\"12\" [screenMedium]=\"6\">\n <sky-input-box\n data-sky-id=\"input-box-email\"\n labelText=\"Email address\"\n stacked=\"true\"\n helpPopoverContent=\"We do not share this information with any third parties.\"\n helpPopoverTitle=\"Privacy notice\"\n >\n <input formControlName=\"email\" type=\"text\" />\n </sky-input-box>\n </sky-column>\n <sky-column [screenSmall]=\"12\" [screenMedium]=\"6\">\n <sky-input-box labelText=\"Date of birth\" stacked=\"true\">\n <sky-datepicker>\n <input formControlName=\"dob\" skyDatepickerInput />\n </sky-datepicker>\n </sky-input-box>\n </sky-column>\n </sky-row>\n <sky-row>\n <sky-column [screenSmall]=\"12\">\n <sky-input-box\n data-sky-id=\"input-box-favorite-color\"\n labelText=\"Favorite color\"\n >\n <select\n class=\"input-box-favorite-color-select\"\n formControlName=\"favoriteColor\"\n >\n <option value=\"none\">None</option>\n <option value=\"red\">Red</option>\n <option value=\"orange\">Orange</option>\n <option value=\"yellow\">Yellow</option>\n <option value=\"green\">Green</option>\n <option value=\"blue\">Blue</option>\n <option value=\"purple\">Purple</option>\n <option value=\"invalid\">Invalid Color</option>\n </select>\n <!-- Custom form error not handled by input box. -->\n @if (favoriteColor.errors?.['invalid']) {\n <sky-form-error\n errorName=\"invalid\"\n errorText=\"Invalid Color is not a color\"\n />\n }\n </sky-input-box>\n </sky-column>\n </sky-row>\n </sky-fluid-grid>\n </form>\n</div>\n","import { Component, inject } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n ValidationErrors,\n} from '@angular/forms';\nimport { SkyRadioModule } from '@skyux/forms';\n\ninterface DemoForm {\n paymentMethod: FormControl<string | null>;\n}\n\ninterface Item {\n name: string;\n value: string;\n disabled?: boolean;\n hintText?: string;\n helpKey?: string;\n}\n\nfunction validatePaymentMethod(\n control: AbstractControl,\n): ValidationErrors | null {\n return control.value === 'check' ? { processingIssue: true } : null;\n}\n\n@Component({\n selector: 'app-forms-radio-help-key-example',\n templateUrl: './example.component.html',\n imports: [FormsModule, ReactiveFormsModule, SkyRadioModule],\n})\nexport class FormsRadioHelpKeyExampleComponent {\n protected formGroup: FormGroup<DemoForm>;\n protected hintText = 'Card methods require proof of identification.';\n protected paymentMethod: FormControl<string | null>;\n\n protected paymentOptions: Item[] = [\n {\n name: 'Cash',\n value: 'cash',\n helpKey: 'cash-help',\n },\n { name: 'Check', value: 'check' },\n { name: 'Apple pay', value: 'apple', disabled: true },\n {\n name: 'Credit',\n value: 'credit',\n hintText: 'A 2% late fee is applied to payments made after the due date.',\n },\n { name: 'Debit', value: 'debit' },\n ];\n\n readonly #formBuilder = inject(FormBuilder);\n\n constructor() {\n this.paymentMethod = this.#formBuilder.control(\n this.paymentOptions[0].name,\n {\n validators: [validatePaymentMethod],\n },\n );\n\n this.formGroup = this.#formBuilder.group({\n paymentMethod: this.paymentMethod,\n });\n }\n}\n","<div class=\"sky-padding-even-lg\">\n <form [formGroup]=\"formGroup\">\n <sky-radio-group\n data-sky-id=\"radio-group\"\n formControlName=\"paymentMethod\"\n headingLevel=\"4\"\n headingText=\"Payment method\"\n helpKey=\"payment-help\"\n [hintText]=\"hintText\"\n >\n @for (option of paymentOptions; track option) {\n <sky-radio\n [disabled]=\"option.disabled\"\n [value]=\"option.value\"\n [labelText]=\"option.name\"\n [helpKey]=\"option.helpKey\"\n [hintText]=\"option.hintText\"\n />\n }\n @if (paymentMethod.errors?.['processingIssue']) {\n <sky-form-error\n errorName=\"processingIssue\"\n errorText=\"An error occurred with this payment method. Please contact us to resolve.\"\n />\n }\n </sky-radio-group>\n </form>\n</div>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyRadioModule } from '@skyux/forms';\n\ninterface Item {\n icon: string;\n label: string;\n name: string;\n}\n\n@Component({\n selector: 'app-forms-radio-icon-example',\n templateUrl: './example.component.html',\n imports: [FormsModule, ReactiveFormsModule, SkyRadioModule],\n})\nexport class FormsRadioIconExampleComponent {\n protected formGroup: FormGroup;\n\n protected views: Item[] = [\n { icon: 'table', label: 'Table', name: 'table' },\n { icon: 'list', label: 'List', name: 'list' },\n { icon: 'map-marker', label: 'Map', name: 'map' },\n ];\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n myView: this.views[0].name,\n });\n }\n}\n","<div class=\"sky-padding-even-lg\">\n <form [formGroup]=\"formGroup\">\n <sky-radio-group\n class=\"sky-switch-icon-group\"\n formControlName=\"myView\"\n headingHidden=\"true\"\n headingText=\"View\"\n >\n @for (view of views; track view) {\n <sky-radio\n [icon]=\"view.icon\"\n [labelHidden]=\"true\"\n [labelText]=\"view.label\"\n [value]=\"view.name\"\n />\n }\n </sky-radio-group>\n </form>\n</div>\n","import { Component, inject } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n ValidationErrors,\n} from '@angular/forms';\nimport { SkyRadioModule } from '@skyux/forms';\n\ninterface DemoForm {\n paymentMethod: FormControl<string | null>;\n}\n\ninterface Item {\n name: string;\n value: string;\n disabled?: boolean;\n hintText?: string;\n helpContent?: string;\n}\n\nfunction validatePaymentMethod(\n control: AbstractControl,\n): ValidationErrors | null {\n return control.value === 'check' ? { processingIssue: true } : null;\n}\n\n@Component({\n selector: 'app-forms-radio-standard-example',\n templateUrl: './example.component.html',\n imports: [FormsModule, ReactiveFormsModule, SkyRadioModule],\n})\nexport class FormsRadioStandardExampleComponent {\n protected formGroup: FormGroup<DemoForm>;\n protected helpPopoverContent =\n \"We don't charge fees for any payment method. The only exception is when credit card payments are late, which incurs a 2% fee.\";\n protected helpPopoverTitle = 'Are there fees?';\n protected hintText = 'Card methods require proof of identification.';\n protected paymentMethod: FormControl<string | null>;\n\n protected paymentOptions: Item[] = [\n {\n name: 'Cash',\n value: 'cash',\n helpContent:\n 'We accept cash at any of our locations and affiliated partners.',\n },\n { name: 'Check', value: 'check' },\n { name: 'Apple pay', value: 'apple', disabled: true },\n {\n name: 'Credit',\n value: 'credit',\n hintText: 'A 2% late fee is applied to payments made after the due date.',\n },\n { name: 'Debit', value: 'debit' },\n ];\n\n readonly #formBuilder = inject(FormBuilder);\n\n constructor() {\n this.paymentMethod = this.#formBuilder.control(\n this.paymentOptions[0].name,\n {\n validators: [validatePaymentMethod],\n },\n );\n\n this.formGroup = this.#formBuilder.group({\n paymentMethod: this.paymentMethod,\n });\n }\n}\n","<div class=\"sky-padding-even-lg\">\n <form [formGroup]=\"formGroup\">\n <sky-radio-group\n data-sky-id=\"radio-group\"\n formControlName=\"paymentMethod\"\n headingLevel=\"4\"\n headingText=\"Payment method\"\n [helpPopoverContent]=\"helpPopoverContent\"\n [helpPopoverTitle]=\"helpPopoverTitle\"\n [hintText]=\"hintText\"\n >\n @for (option of paymentOptions; track option) {\n <sky-radio\n [disabled]=\"option.disabled\"\n [value]=\"option.value\"\n [labelText]=\"option.name\"\n [helpPopoverContent]=\"option.helpContent\"\n [hintText]=\"option.hintText\"\n />\n }\n @if (paymentMethod.errors?.['processingIssue']) {\n <sky-form-error\n errorName=\"processingIssue\"\n errorText=\"An error occurred with this payment method. Please contact us to resolve.\"\n />\n }\n </sky-radio-group>\n </form>\n</div>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyIdModule } from '@skyux/core';\nimport { SkyRadioModule, SkySelectionBoxModule } from '@skyux/forms';\nimport { SkyIconModule } from '@skyux/icon';\n\n@Component({\n selector: 'app-forms-selection-box-radio-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyIconModule,\n SkyIdModule,\n SkyRadioModule,\n SkySelectionBoxModule,\n ],\n})\nexport class FormsSelectionBoxRadioExampleComponent {\n protected items: Record<string, string>[] = [\n {\n name: 'Save time and effort',\n icon: 'clock',\n description:\n 'Automate mundane tasks and spend more time on the things that matter.',\n value: 'clock',\n },\n {\n name: 'Boost engagement',\n icon: 'user',\n description: 'Encourage supporters to interact with your organization.',\n value: 'engagement',\n },\n {\n name: 'Build relationships',\n icon: 'users',\n description:\n 'Connect to supporters on a personal level and maintain accurate data.',\n value: 'relationships',\n },\n ];\n\n protected formGroup: FormGroup;\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n myOption: this.items[2]['value'],\n });\n }\n}\n","<form novalidate [formGroup]=\"formGroup\">\n <sky-radio-group ariaLabel=\"Demo options\" formControlName=\"myOption\">\n <sky-selection-box-grid>\n @for (item of items; track item) {\n <sky-selection-box [control]=\"radio\">\n <sky-icon [icon]=\"item['icon']\" />\n <sky-selection-box-header #radioHeaderId=\"skyId\" skyId>\n {{ item['name'] }}\n </sky-selection-box-header>\n <sky-selection-box-description>\n {{ item['description'] }}\n </sky-selection-box-description>\n <sky-radio\n #radio\n [labelledBy]=\"radioHeaderId.id\"\n [value]=\"item['value']\"\n />\n </sky-selection-box>\n }\n </sky-selection-box-grid>\n </sky-radio-group>\n</form>\n","import { Component, inject } from '@angular/core';\nimport {\n FormArray,\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyIdModule } from '@skyux/core';\nimport { SkyCheckboxModule, SkySelectionBoxModule } from '@skyux/forms';\nimport { SkyIconModule } from '@skyux/icon';\n\n@Component({\n selector: 'app-forms-selection-box-checkbox-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyCheckboxModule,\n SkyIconModule,\n SkyIdModule,\n SkySelectionBoxModule,\n ],\n})\nexport class FormsSelectionBoxCheckboxExampleComponent {\n protected checkboxControls: FormControl[] | undefined;\n\n protected selectionBoxes: {\n description: string;\n icon: string;\n name: string;\n selected?: boolean;\n }[] = [\n {\n name: 'Save time and effort',\n icon: 'clock',\n description:\n 'Automate mundane tasks and spend more time on the things that matter.',\n },\n {\n name: 'Boost engagement',\n icon: 'user',\n description: 'Encourage supporters to interact with your organization.',\n },\n {\n name: 'Build relationships',\n icon: 'users',\n description:\n 'Connect to supporters on a personal level and maintain accurate data.',\n },\n ];\n\n protected formGroup: FormGroup;\n\n readonly #formBuilder = inject(FormBuilder);\n\n constructor() {\n const checkboxArray = this.#buildCheckboxes();\n this.checkboxControls = checkboxArray.controls as FormControl[];\n\n this.formGroup = this.#formBuilder.group({\n checkboxes: checkboxArray,\n });\n }\n\n #buildCheckboxes(): FormArray {\n const checkboxArray = this.selectionBoxes.map((checkbox) =>\n this.#formBuilder.control(checkbox.selected),\n );\n\n return this.#formBuilder.array(checkboxArray);\n }\n}\n","<form [formGroup]=\"formGroup\">\n <sky-selection-box-grid>\n @for (control of checkboxControls; track control; let i = $index) {\n <sky-selection-box [control]=\"checkbox\">\n <sky-icon [icon]=\"selectionBoxes[i].icon\" />\n <sky-selection-box-header #checkboxHeaderId=\"skyId\" skyId>\n {{ selectionBoxes[i].name }}\n </sky-selection-box-header>\n <sky-selection-box-description>\n {{ selectionBoxes[i].description }}\n </sky-selection-box-description>\n <sky-checkbox\n #checkbox\n [formControl]=\"control\"\n [labelledBy]=\"checkboxHeaderId.id\"\n />\n </sky-selection-box>\n }\n </sky-selection-box-grid>\n</form>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyToggleSwitchModule } from '@skyux/forms';\n\ninterface ToggleSwitchFormType {\n registration: FormControl<boolean | null>;\n}\n\n@Component({\n selector: 'app-forms-toggle-switch-basic-example',\n templateUrl: './example.component.html',\n imports: [FormsModule, ReactiveFormsModule, SkyToggleSwitchModule],\n})\nexport class FormsToggleSwitchBasicExampleComponent {\n protected formGroup: FormGroup;\n protected helpPopoverContent =\n 'When you open an event, a registration page becomes available online, and admins are able to register people to attend.';\n\n constructor() {\n this.formGroup = inject(FormBuilder).group<ToggleSwitchFormType>({\n registration: new FormControl(false),\n });\n }\n}\n","<form [formGroup]=\"formGroup\">\n <sky-toggle-switch\n formControlName=\"registration\"\n labelText=\"Open for registration\"\n [helpPopoverContent]=\"helpPopoverContent\"\n />\n</form>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyToggleSwitchModule } from '@skyux/forms';\n\ninterface ToggleSwitchFormType {\n registration: FormControl<boolean | null>;\n}\n\n@Component({\n selector: 'app-forms-toggle-switch-help-key-example',\n templateUrl: './example.component.html',\n imports: [FormsModule, ReactiveFormsModule, SkyToggleSwitchModule],\n})\nexport class FormsToggleSwitchHelpKeyExampleComponent {\n protected formGroup: FormGroup;\n\n constructor() {\n this.formGroup = inject(FormBuilder).group<ToggleSwitchFormType>({\n registration: new FormControl(false),\n });\n }\n}\n","<form [formGroup]=\"formGroup\">\n <sky-toggle-switch\n formControlName=\"registration\"\n helpKey=\"registration-help\"\n labelText=\"Open for registration\"\n />\n</form>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { SkyAlertModule } from '@skyux/indicators';\n\n@Component({\n selector: 'app-indicators-alert-basic-example',\n templateUrl: './example.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyAlertModule],\n})\nexport class IndicatorsAlertBasicExampleComponent {\n @Input()\n public days = 9;\n\n protected onClosedChange(event: boolean): void {\n alert(`Alert closed with: ${event}`);\n }\n}\n","<sky-alert\n data-sky-id=\"alert-example\"\n [alertType]=\"days < 8 ? 'danger' : 'warning'\"\n [closeable]=\"days >= 8\"\n [descriptionType]=\"days < 8 ? 'danger' : 'important-warning'\"\n (closedChange)=\"onClosedChange($event)\"\n>\n Your password expires in {{ days }} day(s)!\n</sky-alert>\n","import { Injectable } from '@angular/core';\nimport { SkyIllustrationResolverService } from '@skyux/indicators';\n\n@Injectable()\nexport class IllustrationDemoResolverService extends SkyIllustrationResolverService {\n public override resolveUrl(name: string): Promise<string> {\n const url =\n name === 'analytics-graph'\n ? 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii0yIC0yIDk2IDk2IiBoZWlnaHQ9Ijk2IiB3aWR0aD0iOTYiPjxkZWZzPjwvZGVmcz48cGF0aCBkPSJNOTAuMDgzMzMzMzMzMzMzMzQgOTAuMDgzMzMzMzMzMzMzMzRIMy44MzMzMzMzMzMzMzMzMzM1YTEuOTE2NjY2NjY2NjY2NjY2NyAxLjkxNjY2NjY2NjY2NjY2NjcgMCAwIDEgLTEuOTE2NjY2NjY2NjY2NjY2NyAtMS45MTY2NjY2NjY2NjY2NjY3VjEuOTE2NjY2NjY2NjY2NjY2NyIgc3Ryb2tlPSIjMDA0MDU0IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiIHN0cm9rZS13aWR0aD0iNCI+PC9wYXRoPjxwYXRoIGQ9Ik0yOC43NSA2OUE1Ljc1IDUuNzUgMCAxIDAgMjMgNjMuMjUgNS43NSA1Ljc1IDAgMCAwIDI4Ljc1IDY5WiIgZmlsbD0iIzZkZThhYiIgc3Ryb2tlPSIjMDA0MDU0IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iNCI+PC9wYXRoPjxwYXRoIGQ9Im02NC44NTIzMzMzMzMzMzMzMyAzMS44ODE4MzMzMzMzMzMzMzYgMTUuNjI0NjY2NjY2NjY2NjY2IC0xOS45NjAxNjY2NjY2NjY2NjYiIHN0cm9rZT0iIzAwNDA1NCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSJub25lIiBzdHJva2Utd2lkdGg9IjQiPjwvcGF0aD48cGF0aCBkPSJtMzguMDg0MTY2NjY2NjY2NjcgMjguNTk2NjY2NjY2NjY2NjY4IDE3LjcwMjMzMzMzMzMzMzMzNSA2LjMxNzMzMzMzMzMzMzMzMyIgc3Ryb2tlPSIjMDA0MDU0IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiIHN0cm9rZS13aWR0aD0iNCI+PC9wYXRoPjxwYXRoIGQ9Im0xLjkxNjY2NjY2NjY2NjY2NjcgNDUuMTc1ODMzMzMzMzMzMzQgMjUuNzU2MTY2NjY2NjY2NjcgLTE1LjMzMzMzMzMzMzMzMzMzNCIgc3Ryb2tlPSIjMDA0MDU0IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiIHN0cm9rZS13aWR0aD0iNCI+PC9wYXRoPjxwYXRoIGQ9Im02Mi40ODMzMzMzMzMzMzMzNCA2MC4zOTggMTYuODg1ODMzMzMzMzMzMzM0IC05LjU4MzMzMzMzMzMzMzMzNCIgc3Ryb2tlPSIjMDA0MDU0IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiIHN0cm9rZS13aWR0aD0iNCI+PC9wYXRoPjxwYXRoIGQ9Ik0zNC41IDYzLjI1aDE3LjI1IiBzdHJva2U9IiMwMDQwNTQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgZmlsbD0ibm9uZSIgc3Ryb2tlLXdpZHRoPSI0Ij48L3BhdGg+PHBhdGggZD0ibTEuOTE2NjY2NjY2NjY2NjY2NyA4MC41IDIxLjkwMzY2NjY2NjY2NjY3IC0xNC4yOTgzMzMzMzMzMzMzMzQiIHN0cm9rZT0iIzAwNDA1NCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSJub25lIiBzdHJva2Utd2lkdGg9IjQiPjwvcGF0aD48cGF0aCBkPSJNMzIuNTgzMzMzMzMzMzMzMzM2IDMyLjU4MzMzMzMzMzMzMzMzNkE1Ljc1IDUuNzUgMCAxIDAgMjYuODMzMzMzMzMzMzMzMzM2IDI2LjgzMzMzMzMzMzMzMzMzNmE1Ljc1IDUuNzUgMCAwIDAgNS43NSA1Ljc1WiIgZmlsbD0iIzZkZThhYiIgc3Ryb2tlPSIjMDA0MDU0IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iNCI+PC9wYXRoPjxwYXRoIGQ9Ik02MS4zMzMzMzMzMzMzMzMzMzYgNDIuMTY2NjY2NjY2NjY2NjdhNS43NSA1Ljc1IDAgMSAwIC01Ljc1IC01Ljc1QTUuNzUgNS43NSAwIDAgMCA2MS4zMzMzMzMzMzMzMzMzMzYgNDIuMTY2NjY2NjY2NjY2NjdaIiBmaWxsPSIjNmRlOGFiIiBzdHJva2U9IiMwMDQwNTQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSI0Ij48L3BhdGg+PHBhdGggZD0iTTg0LjMzMzMzMzMzMzMzMzM0IDEzLjQxNjY2NjY2NjY2NjY2OEE1Ljc1IDUuNzUgMCAxIDAgNzguNTgzMzMzMzMzMzMzMzQgNy42NjY2NjY2NjY2NjY2NjcgNS43NSA1Ljc1IDAgMCAwIDg0LjMzMzMzMzMzMzMzMzM0IDEzLjQxNjY2NjY2NjY2NjY2OFoiIGZpbGw9IiM2ZGU4YWIiIHN0cm9rZT0iIzAwNDA1NCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBzdHJva2Utd2lkdGg9IjQiPjwvcGF0aD48cGF0aCBkPSJNODQuMzMzMzMzMzMzMzMzMzQgNTMuNjY2NjY2NjY2NjY2NjdhNS43NSA1Ljc1IDAgMSAwIC01Ljc1IC01Ljc1QTUuNzUgNS43NSAwIDAgMCA4NC4zMzMzMzMzMzMzMzMzNCA1My42NjY2NjY2NjY2NjY2N1oiIGZpbGw9IiM2ZGU4YWIiIHN0cm9rZT0iIzAwNDA1NCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBzdHJva2Utd2lkdGg9IjQiPjwvcGF0aD48cGF0aCBkPSJNNTcuNSA2OWE1Ljc1IDUuNzUgMCAxIDAgLTUuNzUgLTUuNzVBNS43NSA1Ljc1IDAgMCAwIDU3LjUgNjlaIiBmaWxsPSIjNmRlOGFiIiBzdHJva2U9IiMwMDQwNTQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSI0Ij48L3BhdGg+PC9zdmc+'\n : '';\n\n return Promise.resolve(url);\n }\n}\n","import { Component } from '@angular/core';\nimport {\n SkyIllustrationModule,\n SkyIllustrationResolverService,\n} from '@skyux/indicators';\n\nimport { IllustrationDemoResolverService } from './illustration-demo-resolver.service';\n\n@Component({\n selector: 'app-indicators-illustration-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyIllustrationModule],\n // This service is provided here as an example; your implementation of `SkyIllustrationResolverService`\n // should be provided at the application level.\n providers: [\n {\n provide: SkyIllustrationResolverService,\n useClass: IllustrationDemoResolverService,\n },\n ],\n})\nexport class IndicatorsIllustrationBasicExampleComponent {}\n","<sky-illustration\n data-sky-id=\"illustration-example\"\n name=\"analytics-graph\"\n size=\"md\"\n/>\n","import { Component, Input } from '@angular/core';\nimport { SkyKeyInfoLayoutType, SkyKeyInfoModule } from '@skyux/indicators';\n\n@Component({\n selector: 'app-indicators-key-info-help-key-example',\n templateUrl: './example.component.html',\n imports: [SkyKeyInfoModule],\n})\nexport class IndicatorsKeyInfoHelpKeyExampleComponent {\n @Input()\n public set value(value: number | undefined) {\n this.#_value = value;\n\n this.layout =\n this.#_value && this.#_value >= 100 ? 'vertical' : 'horizontal';\n }\n\n public get value(): number | undefined {\n return this.#_value;\n }\n\n protected layout: SkyKeyInfoLayoutType = 'vertical';\n\n #_value: number | undefined = 575;\n}\n","<sky-key-info\n data-sky-id=\"key-info-example\"\n helpKey=\"new-member-help\"\n [layout]=\"layout\"\n>\n <sky-key-info-value class=\"sky-font-display-3\">\n {{ value }}\n </sky-key-info-value>\n <sky-key-info-label> New members </sky-key-info-label>\n</sky-key-info>\n","import { Component, Input } from '@angular/core';\nimport {\n SkyIndicatorDescriptionType,\n SkyLabelModule,\n SkyLabelType,\n} from '@skyux/indicators';\n\n@Component({\n selector: 'app-indicators-label-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyLabelModule],\n})\nexport class IndicatorsLabelBasicExampleComponent {\n @Input()\n public get daysUntilDue(): number {\n return this.#_daysUntilDue;\n }\n\n public set daysUntilDue(days: number) {\n this.#_daysUntilDue = days;\n this.#updateLabelProperties(this.submitted, days);\n }\n\n @Input()\n public get submitted(): boolean {\n return this.#_submitted;\n }\n\n public set submitted(submitted: boolean) {\n this.#_submitted = submitted;\n this.#updateLabelProperties(submitted, this.daysUntilDue);\n }\n\n protected descriptionType: SkyIndicatorDescriptionType = 'attention';\n protected labelText = 'Incomplete';\n protected labelType: SkyLabelType = 'info';\n\n #_daysUntilDue = 14;\n #_submitted = false;\n\n #updateLabelProperties(submitted: boolean, days: number): void {\n if (submitted) {\n this.labelType = 'success';\n this.descriptionType = 'completed';\n this.labelText = 'Submitted';\n } else if (days <= 0) {\n this.labelType = 'danger';\n this.descriptionType = 'danger';\n this.labelText = 'Overdue';\n } else if (days <= 7) {\n this.labelType = 'warning';\n this.descriptionType = 'important-warning';\n this.labelText = 'Due soon';\n } else {\n this.labelType = 'info';\n this.descriptionType = 'attention';\n this.labelText = 'Incomplete';\n }\n }\n}\n","<sky-label\n data-sky-id=\"label-example\"\n [descriptionType]=\"descriptionType\"\n [labelType]=\"labelType\"\n>\n {{ labelText }}\n</sky-label>\n","import { Component, Input } from '@angular/core';\nimport { SkyKeyInfoLayoutType, SkyKeyInfoModule } from '@skyux/indicators';\n\n@Component({\n selector: 'app-indicators-key-info-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyKeyInfoModule],\n})\nexport class IndicatorsKeyInfoBasicExampleComponent {\n @Input()\n public set value(value: number | undefined) {\n this.#_value = value;\n\n this.layout =\n this.#_value && this.#_value >= 100 ? 'vertical' : 'horizontal';\n }\n\n public get value(): number | undefined {\n return this.#_value;\n }\n\n protected layout: SkyKeyInfoLayoutType = 'vertical';\n\n #_value: number | undefined = 575;\n}\n","<sky-key-info\n data-sky-id=\"key-info-example\"\n helpPopoverTitle=\"Help\"\n [layout]=\"layout\"\n [helpPopoverContent]=\"helpContent\"\n>\n <sky-key-info-value class=\"sky-font-display-3\">\n {{ value }}\n </sky-key-info-value>\n <sky-key-info-label> New members </sky-key-info-label>\n</sky-key-info>\n<ng-template #helpContent>\n This help content can add clarity and provide next steps.\n</ng-template>\n","import { Component } from '@angular/core';\nimport { SkyStatusIndicatorModule } from '@skyux/indicators';\n\n@Component({\n selector: 'app-indicators-status-indicator-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyStatusIndicatorModule],\n})\nexport class IndicatorsStatusIndicatorBasicExampleComponent {}\n","<sky-status-indicator\n data-sky-id=\"status-indicator-error\"\n descriptionType=\"error\"\n indicatorType=\"danger\"\n>\n Danger status indicator\n</sky-status-indicator>\n\n<sky-status-indicator\n data-sky-id=\"status-indicator-important-info\"\n descriptionType=\"important-info\"\n indicatorType=\"info\"\n>\n Info status indicator\n</sky-status-indicator>\n\n<sky-status-indicator\n data-sky-id=\"status-indicator-completed\"\n descriptionType=\"completed\"\n indicatorType=\"success\"\n>\n Success status indicator\n</sky-status-indicator>\n\n<sky-status-indicator\n data-sky-id=\"status-indicator-warning\"\n descriptionType=\"warning\"\n indicatorType=\"warning\"\n>\n Warning status indicator\n</sky-status-indicator>\n\n<sky-status-indicator\n customDescription=\"Custom warning\"\n data-sky-id=\"status-indicator-custom\"\n descriptionType=\"custom\"\n indicatorType=\"warning\"\n>\n Warning status indicator with custom screen reader description\n</sky-status-indicator>\n\n<sky-status-indicator\n data-sky-id=\"status-indicator-error-with-help\"\n descriptionType=\"error\"\n indicatorType=\"danger\"\n helpPopoverContent=\"\n This contextual help can provide more information about\n the status as well as possible next steps.\"\n>\n Danger status indicator with help\n</sky-status-indicator>\n","import { Component } from '@angular/core';\nimport { SkyStatusIndicatorModule } from '@skyux/indicators';\n\n@Component({\n selector: 'app-indicators-status-indicator-help-key-example',\n templateUrl: './example.component.html',\n imports: [SkyStatusIndicatorModule],\n})\nexport class IndicatorsStatusIndicatorHelpKeyExampleComponent {}\n","<sky-status-indicator\n data-sky-id=\"status-indicator-error\"\n descriptionType=\"error\"\n indicatorType=\"danger\"\n>\n Danger status indicator\n</sky-status-indicator>\n\n<sky-status-indicator\n data-sky-id=\"status-indicator-important-info\"\n descriptionType=\"important-info\"\n indicatorType=\"info\"\n>\n Info status indicator\n</sky-status-indicator>\n\n<sky-status-indicator\n data-sky-id=\"status-indicator-completed\"\n descriptionType=\"completed\"\n indicatorType=\"success\"\n>\n Success status indicator\n</sky-status-indicator>\n\n<sky-status-indicator\n data-sky-id=\"status-indicator-warning\"\n descriptionType=\"warning\"\n indicatorType=\"warning\"\n>\n Warning status indicator\n</sky-status-indicator>\n\n<sky-status-indicator\n customDescription=\"Custom warning\"\n data-sky-id=\"status-indicator-custom\"\n descriptionType=\"custom\"\n indicatorType=\"warning\"\n>\n Warning status indicator with custom screen reader description\n</sky-status-indicator>\n\n<sky-status-indicator\n data-sky-id=\"status-indicator-error-with-help-key\"\n descriptionType=\"error\"\n indicatorType=\"danger\"\n helpKey=\"danger-help\"\n>\n Danger status indicator with help key\n</sky-status-indicator>\n","import { Component } from '@angular/core';\nimport { SkyToken, SkyTokensModule } from '@skyux/indicators';\n\n@Component({\n selector: 'app-indicators-tokens-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyTokensModule],\n})\nexport class IndicatorsTokensBasicExampleComponent {\n public colors: SkyToken<{\n name: string;\n }>[] = [\n { value: { name: 'Red' } },\n { value: { name: 'Black' } },\n { value: { name: 'Blue' } },\n { value: { name: 'Brown' } },\n { value: { name: 'Green' } },\n { value: { name: 'Orange' } },\n { value: { name: 'Pink' } },\n { value: { name: 'Purple' } },\n { value: { name: 'Turquoise' } },\n { value: { name: 'White' } },\n { value: { name: 'Yellow' } },\n ];\n}\n","<sky-tokens data-sky-id=\"color-tokens\" [(tokens)]=\"colors\" />\n","import { Component } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SkyCheckboxModule, SkyInputBoxModule } from '@skyux/forms';\nimport { SkyTextHighlightModule } from '@skyux/indicators';\n\n@Component({\n selector: 'app-indicators-text-highlight-basic-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n SkyCheckboxModule,\n SkyInputBoxModule,\n SkyTextHighlightModule,\n ],\n})\nexport class IndicatorsTextHighlightBasicExampleComponent {\n protected searchTerm = '';\n protected showAdditionalContent = false;\n}\n","<div class=\"sky-margin-stacked-lg\">\n <sky-input-box labelText=\"Text to highlight\" [stacked]=\"true\">\n <input type=\"text\" [(ngModel)]=\"searchTerm\" />\n </sky-input-box>\n</div>\n\n<div class=\"sky-margin-stacked-lg\">\n <sky-checkbox\n labelText=\"Display additional content\"\n [(ngModel)]=\"showAdditionalContent\"\n />\n</div>\n\n<div [skyHighlight]=\"searchTerm\">\n The text that you enter is highlighted here.\n @if (showAdditionalContent) {\n <div>This additional content is highlighted too!</div>\n }\n</div>\n","import { Component, OnDestroy } from '@angular/core';\nimport {\n SkyToken,\n SkyTokenSelectedEventArgs,\n SkyTokensMessage,\n SkyTokensMessageType,\n SkyTokensModule,\n} from '@skyux/indicators';\n\nimport { Subject } from 'rxjs';\n\ninterface TokenItem {\n label: string;\n}\n\n@Component({\n selector: 'app-indicators-tokens-custom-example',\n templateUrl: './example.component.html',\n imports: [SkyTokensModule],\n})\nexport class IndicatorsTokensCustomExampleComponent implements OnDestroy {\n protected myTokens: SkyToken<TokenItem>[] | undefined;\n protected tokensController = new Subject<SkyTokensMessage>();\n protected selectedToken: string | undefined = '';\n\n #defaultItems: TokenItem[] = [\n { label: 'Canada' },\n { label: 'Older than 55' },\n { label: 'Employed' },\n { label: 'Added before 2018' },\n ];\n\n constructor() {\n this.myTokens = this.#getTokens(this.#defaultItems);\n }\n\n public ngOnDestroy(): void {\n this.tokensController.complete();\n }\n\n protected resetTokens(): void {\n this.createTokens();\n }\n\n protected changeTokens(): void {\n this.myTokens = this.#getTokens([\n { label: 'Paid' },\n { label: 'Pending' },\n { label: 'Past due' },\n ]);\n }\n\n protected destroyTokens(): void {\n this.myTokens = undefined;\n }\n\n protected createTokens(): void {\n this.myTokens = this.#getTokens(this.#defaultItems);\n }\n\n protected onTokenSelected(args: SkyTokenSelectedEventArgs<TokenItem>): void {\n this.selectedToken = args.token?.value.label;\n }\n\n protected onFocusIndexUnderRange(): void {\n console.log('Focus index was less than zero.');\n }\n\n protected onFocusIndexOverRange(): void {\n console.log('Focus index was greater than the number of tokens.');\n }\n\n protected focusLastToken(): void {\n this.tokensController.next({\n type: SkyTokensMessageType.FocusLastToken,\n });\n }\n\n #getTokens(data: TokenItem[]): SkyToken<TokenItem>[] {\n return data.map((item) => {\n return {\n value: item,\n };\n });\n }\n}\n","<p>\n These tokens define a custom property to display their values. When users\n select a token, it emits an event.\n</p>\n\n<div class=\"sky-margin-stacked-xl\">\n <sky-tokens\n data-sky-id=\"example-tokens\"\n displayWith=\"label\"\n [messageStream]=\"tokensController\"\n [(tokens)]=\"myTokens\"\n (focusIndexOverRange)=\"onFocusIndexOverRange()\"\n (focusIndexUnderRange)=\"onFocusIndexUnderRange()\"\n (tokenSelected)=\"onTokenSelected($event)\"\n >\n (You may also include content inside the tokens component.)\n </sky-tokens>\n</div>\n\n<div class=\"sky-margin-stacked-xl\">\n <button\n class=\"sky-btn sky-btn-default sky-margin-inline-sm tokens-example-change-btn\"\n type=\"button\"\n (click)=\"changeTokens()\"\n >\n Change tokens\n </button>\n\n <button\n class=\"sky-btn sky-btn-default sky-margin-inline-sm tokens-example-reset-btn\"\n type=\"button\"\n (click)=\"resetTokens()\"\n >\n Reset tokens\n </button>\n\n <button\n class=\"sky-btn sky-btn-default sky-margin-inline-sm tokens-example-destroy-btn\"\n type=\"button\"\n (click)=\"destroyTokens()\"\n >\n Destroy tokens\n </button>\n\n <button\n class=\"sky-btn sky-btn-default sky-margin-inline-sm tokens-example-focus-last-btn\"\n type=\"button\"\n (click)=\"focusLastToken()\"\n >\n Focus last token\n </button>\n</div>\n\n<div>\n Selected token:\n <span class=\"tokens-example-selected\">{{ selectedToken }}</span>\n</div>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyIconModule } from '@skyux/icon';\nimport {\n SkyInlineFormButtonLayout,\n SkyInlineFormCloseArgs,\n SkyInlineFormConfig,\n} from '@skyux/inline-form';\nimport { SkyRepeaterModule } from '@skyux/lists';\n\ninterface DemoForm {\n id: FormControl<string>;\n note: FormControl<string>;\n title: FormControl<string>;\n}\n\ninterface Item {\n id: string;\n title: string | undefined;\n note: string | undefined;\n}\n\n@Component({\n selector: 'app-inline-form-repeaters-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyIconModule,\n SkyInputBoxModule,\n SkyRepeaterModule,\n ],\n})\nexport class InlineFormRepeatersExampleComponent {\n protected activeInlineFormId: string | undefined;\n protected formGroup: FormGroup<DemoForm>;\n\n protected inlineFormConfig: SkyInlineFormConfig = {\n buttonLayout: SkyInlineFormButtonLayout.SaveCancel,\n };\n\n protected items: Item[] = [\n {\n id: '1',\n title: '2019 Spring Gala',\n note: 'Gala for friends and family',\n },\n {\n id: '2',\n title: '2019 Special Winter Event',\n note: 'A special event',\n },\n {\n id: '3',\n title: '2019 Donor Appreciation Event',\n note: 'Event for all donors and families',\n },\n {\n id: '4',\n title: '2020 Spring Gala',\n note: 'Gala for friends and family',\n },\n ];\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n id: new FormControl('', { nonNullable: true }),\n title: new FormControl('', { nonNullable: true }),\n note: new FormControl('', { nonNullable: true }),\n });\n }\n\n protected showInlineForm(item: Item): void {\n this.activeInlineFormId = item.id;\n this.formGroup.patchValue({\n note: item.note,\n title: item.title,\n });\n }\n\n protected onInlineFormClose(args: SkyInlineFormCloseArgs): void {\n if (args.reason === 'save') {\n const found = this.items.find(\n (item) => item.id === this.activeInlineFormId,\n );\n\n if (found) {\n found.note = this.formGroup.value.note;\n found.title = this.formGroup.value.title;\n }\n }\n\n this.formGroup.patchValue({\n note: undefined,\n title: undefined,\n });\n\n // Close the active form.\n this.activeInlineFormId = undefined;\n }\n}\n","<sky-repeater>\n @for (item of items; track item) {\n <sky-repeater-item\n [inlineFormConfig]=\"inlineFormConfig\"\n [inlineFormTemplate]=\"inlineFormTemplate\"\n [showInlineForm]=\"activeInlineFormId === item.id\"\n (inlineFormClose)=\"onInlineFormClose($event)\"\n >\n <sky-repeater-item-title>\n <div class=\"sky-font-emphasized\">\n {{ item.title }}\n </div>\n </sky-repeater-item-title>\n <sky-repeater-item-context-menu>\n <button\n aria-label=\"Edit\"\n class=\"sky-btn sky-btn-icon-borderless\"\n type=\"button\"\n (click)=\"showInlineForm(item)\"\n >\n <sky-icon icon=\"edit\" />\n </button>\n </sky-repeater-item-context-menu>\n\n <sky-repeater-item-content>\n {{ item.note }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n }\n</sky-repeater>\n\n<ng-template #inlineFormTemplate>\n <form novalidate [formGroup]=\"formGroup\">\n <sky-input-box labelTex=\"Title\" stacked=\"true\">\n <input formControlName=\"title\" type=\"text\" />\n </sky-input-box>\n <sky-input-box labelText=\"Note\">\n <input formControlName=\"note\" type=\"text\" />\n </sky-input-box>\n </form>\n</ng-template>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyIconModule } from '@skyux/icon';\nimport {\n SkyInlineFormButtonLayout,\n SkyInlineFormCloseArgs,\n SkyInlineFormConfig,\n SkyInlineFormModule,\n} from '@skyux/inline-form';\n\ninterface DemoForm {\n firstName: FormControl<string>;\n}\n\n@Component({\n selector: 'app-inline-form-basic-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyIconModule,\n SkyInlineFormModule,\n SkyInputBoxModule,\n ],\n})\nexport class InlineFormBasicExampleComponent {\n protected firstName = 'Jane';\n protected formGroup: FormGroup<DemoForm>;\n\n protected inlineFormConfig: SkyInlineFormConfig = {\n buttonLayout: SkyInlineFormButtonLayout.SaveCancel,\n };\n\n protected showForm = false;\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n firstName: new FormControl<string>('', { nonNullable: true }),\n });\n }\n\n protected onInlineFormClose(args: SkyInlineFormCloseArgs): void {\n if (args.reason === 'save') {\n this.firstName = this.formGroup.value.firstName ?? '';\n }\n\n this.showForm = false;\n this.formGroup.patchValue({\n firstName: undefined,\n });\n }\n\n protected onInlineFormOpen(): void {\n this.showForm = true;\n this.formGroup.patchValue({\n firstName: this.firstName,\n });\n }\n}\n","<sky-inline-form\n [config]=\"inlineFormConfig\"\n [showForm]=\"showForm\"\n [template]=\"inlineFormTemplate\"\n (close)=\"onInlineFormClose($event)\"\n>\n <table>\n <tr>\n <th>First name:</th>\n <td>\n {{ firstName }}\n </td>\n <td>\n <button\n aria-label=\"Edit\"\n class=\"sky-btn sky-btn-icon-borderless\"\n type=\"button\"\n (click)=\"onInlineFormOpen()\"\n >\n <sky-icon icon=\"edit\" />\n </button>\n </td>\n </tr>\n </table>\n</sky-inline-form>\n\n<ng-template #inlineFormTemplate>\n <form [formGroup]=\"formGroup\">\n <sky-input-box labelText=\"First name\">\n <input formControlName=\"firstName\" type=\"text\" />\n </sky-input-box>\n </form>\n</ng-template>\n","import { Component } from '@angular/core';\nimport { SkyWaitModule } from '@skyux/indicators';\n\n@Component({\n selector: 'app-indicators-wait-element-example',\n templateUrl: './example.component.html',\n imports: [SkyWaitModule],\n})\nexport class IndicatorsWaitElementExampleComponent {\n protected isWaiting = false;\n}\n","<button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"isWaiting = !isWaiting\"\n>\n Toggle wait\n</button>\n\n<div style=\"height: 200px; width: 200px; margin: 10px\">\n The <code>sky-wait</code> directive can apply to a large area.\n <sky-wait data-sky-id=\"wait-example\" [isWaiting]=\"isWaiting\" />\n</div>\n","import { Component, OnInit, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyIconModule } from '@skyux/icon';\nimport {\n SkyInlineFormButtonLayout,\n SkyInlineFormCloseArgs,\n SkyInlineFormConfig,\n SkyInlineFormModule,\n} from '@skyux/inline-form';\n\ninterface DemoForm {\n firstName: FormControl<string>;\n}\n\n@Component({\n selector: 'app-inline-form-custom-buttons-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyIconModule,\n SkyInlineFormModule,\n SkyInputBoxModule,\n ],\n})\nexport class InlineFormCustomButtonsExampleComponent implements OnInit {\n protected firstName = 'Jane';\n protected formGroup: FormGroup<DemoForm>;\n\n protected inlineFormConfig: SkyInlineFormConfig = {\n buttonLayout: SkyInlineFormButtonLayout.Custom,\n buttons: [\n {\n action: 'save',\n text: 'Save',\n styleType: 'primary',\n },\n {\n action: 'clear',\n text: 'Clear',\n styleType: 'default',\n },\n {\n action: 'reset',\n text: 'Reset',\n styleType: 'default',\n },\n {\n action: 'cancel',\n text: 'Cancel',\n styleType: 'link',\n },\n ],\n };\n\n protected showForm = false;\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n firstName: new FormControl<string>('', { nonNullable: true }),\n });\n }\n\n public ngOnInit(): void {\n this.formGroup.valueChanges.subscribe(() => {\n if (\n this.inlineFormConfig.buttons &&\n this.inlineFormConfig.buttons[0].disabled !== this.formGroup.invalid\n ) {\n this.inlineFormConfig.buttons[0].disabled = this.formGroup.invalid;\n this.inlineFormConfig = { ...{}, ...this.inlineFormConfig };\n }\n });\n }\n\n protected onInlineFormClose(args: SkyInlineFormCloseArgs): void {\n switch (args.reason) {\n case 'save':\n this.firstName = this.formGroup.value.firstName ?? '';\n this.showForm = false;\n break;\n\n case 'clear':\n this.formGroup.patchValue({ firstName: '' });\n break;\n\n case 'reset':\n this.formGroup.setValue({ firstName: this.firstName });\n break;\n\n default:\n this.showForm = false;\n break;\n }\n }\n\n protected onInlineFormOpen(): void {\n this.showForm = true;\n this.formGroup.patchValue({\n firstName: this.firstName,\n });\n }\n}\n","<sky-inline-form\n [config]=\"inlineFormConfig\"\n [showForm]=\"showForm\"\n [template]=\"inlineFormTemplate\"\n (close)=\"onInlineFormClose($event)\"\n>\n <table>\n <tr>\n <th>First name:</th>\n <td>\n {{ firstName }}\n </td>\n <td>\n <button\n aria-label=\"Edit\"\n class=\"sky-btn sky-btn-icon-borderless\"\n type=\"button\"\n (click)=\"onInlineFormOpen()\"\n >\n <sky-icon icon=\"edit\" />\n </button>\n </td>\n </tr>\n </table>\n</sky-inline-form>\n\n<ng-template #inlineFormTemplate>\n <form [formGroup]=\"formGroup\">\n <sky-input-box labelText=\"First name\">\n <input formControlName=\"firstName\" required type=\"text\" />\n </sky-input-box>\n </form>\n</ng-template>\n","import { Component, OnInit } from '@angular/core';\nimport { SkyBackToTopModule } from '@skyux/layout';\nimport { SkyInfiniteScrollModule, SkyRepeaterModule } from '@skyux/lists';\n\nimport { Person } from './person';\n\n@Component({\n selector: 'app-layout-back-to-top-infinite-scroll-example',\n templateUrl: './example.component.html',\n imports: [SkyBackToTopModule, SkyInfiniteScrollModule, SkyRepeaterModule],\n})\nexport class LayoutBackToTopInfiniteScrollExampleComponent implements OnInit {\n public hasMore = true;\n\n public personList: Person[] = [];\n\n public personDataSet = [\n {\n name: 'Barbara Durr',\n address: '7436 Fieldstone Court',\n },\n {\n name: 'Colton Chamberlain',\n address: '342 Foster Court',\n },\n {\n name: 'Alva Clifford',\n address: '657 West Rockville Street',\n },\n {\n name: 'Tonja Sanderson',\n address: '7004 Third Street',\n },\n {\n name: 'Paulene Baum',\n address: '9309 Mammoth Street',\n },\n {\n name: 'Jessy Witherspoon',\n address: '43 Canal Street',\n },\n {\n name: 'Solomon Hurley',\n address: '667 Wakehurst Circle',\n },\n {\n name: 'Calandra Geer',\n address: '164 Applegate Drive',\n },\n {\n name: 'Latrice Ashmore',\n address: '7965 Lake Road',\n },\n {\n name: 'Rod Tomlinson',\n address: '9664 Newport Drive',\n },\n {\n name: 'Cristen Sizemore',\n address: '17 Edgefield Street',\n },\n {\n name: 'Kristeen Lunsford',\n address: '245 Green Lake Street',\n },\n {\n name: 'Jack Lovett',\n address: '73 Academy Street',\n },\n {\n name: 'Elwood Farris',\n address: '90 Smoky Hollow Court',\n },\n {\n name: 'Ilene Woo',\n address: '71 Pumpkin Hill Street',\n },\n {\n name: 'Kanesha Hutto',\n address: '107 East Cooper Street',\n },\n {\n name: 'Nick Bourne',\n address: '62 Evergreen Street',\n },\n {\n name: 'Ed Sipes',\n address: '8824 Hill Street',\n },\n {\n name: 'Wonda Lumpkin',\n address: '134 North Warren Street',\n },\n {\n name: 'Cheyenne Lightfoot',\n address: '184 Pierce Avenue',\n },\n {\n name: 'Darcel Lenz',\n address: '9408 Beechwood Street',\n },\n {\n name: 'Martine Rocha',\n address: '871 Shadow Brook Street',\n },\n {\n name: 'Cherelle Connell',\n address: '649 Glenwood Street',\n },\n {\n name: 'Molly Seymour',\n address: '386 E. George Street',\n },\n {\n name: 'Clarice Overton',\n address: '16 Manchester Street',\n },\n {\n name: 'Eliza Vanhorn',\n address: '8232 S. Augusta Street',\n },\n ];\n\n public ngOnInit(): void {\n void this.#addData(0, 5);\n }\n\n public onScrollEnd(): void {\n void this.#addData(this.personList.length, 5);\n }\n\n async #addData(start: number, rowSize: number): Promise<void> {\n if (this.hasMore) {\n const result = await this.mockRemote(start, rowSize);\n this.personList = this.personList.concat(result.data);\n this.hasMore = result.hasMore;\n }\n }\n\n /**\n * Simulate a remote request.\n */\n private mockRemote(\n start: number,\n rowSize: number,\n ): Promise<{ data: Person[]; hasMore: boolean }> {\n const data: Person[] = [];\n\n for (let i = 0; i < rowSize; i++) {\n if (this.personDataSet[start + i]) {\n data.push(this.personDataSet[start + i]);\n }\n }\n\n return new Promise((resolve) => {\n setTimeout(() => {\n resolve({\n data,\n hasMore: this.personList.length < this.personDataSet.length,\n });\n }, 1000);\n });\n }\n}\n","<sky-repeater skyBackToTop>\n @for (person of personList; track person) {\n <sky-repeater-item>\n <sky-repeater-item-title>\n {{ person.name }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ person.address }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n }\n</sky-repeater>\n<sky-infinite-scroll [enabled]=\"hasMore\" (scrollEnd)=\"onScrollEnd()\" />\n","import { Component, OnDestroy, inject } from '@angular/core';\nimport { SkyWaitService } from '@skyux/indicators';\n\n@Component({\n standalone: true,\n selector: 'app-indicators-wait-page-example',\n templateUrl: './example.component.html',\n})\nexport class IndicatorsWaitPageExampleComponent implements OnDestroy {\n protected isWaiting = false;\n\n readonly #waitSvc = inject(SkyWaitService);\n\n public ngOnDestroy(): void {\n this.#waitSvc.dispose();\n }\n\n protected togglePageWait(isBlocking: boolean): void {\n if (!this.isWaiting) {\n if (isBlocking) {\n this.#waitSvc.beginBlockingPageWait();\n } else {\n this.#waitSvc.beginNonBlockingPageWait();\n }\n } else if (isBlocking) {\n this.#waitSvc.endBlockingPageWait();\n } else {\n this.#waitSvc.endNonBlockingPageWait();\n }\n\n this.isWaiting = !this.isWaiting;\n }\n}\n","<button\n class=\"sky-btn sky-btn-default sky-margin-inline-sm\"\n type=\"button\"\n (click)=\"togglePageWait(true)\"\n>\n Show page wait\n</button>\n\n<button\n class=\"sky-btn sky-btn-default sky-margin-inline-sm\"\n type=\"button\"\n (click)=\"togglePageWait(false)\"\n>\n Show non-blocking page wait\n</button>\n","import { Component } from '@angular/core';\nimport { SkyActionButtonModule, SkyActionButtonPermalink } from '@skyux/layout';\n\n@Component({\n selector: 'app-layout-action-button-permalink-example',\n templateUrl: './example.component.html',\n imports: [SkyActionButtonModule],\n})\nexport class LayoutActionButtonPermalinkExampleComponent {\n protected routerlink: SkyActionButtonPermalink = {\n route: {\n commands: [],\n extras: {\n queryParams: {\n component: 'MyComponent',\n },\n },\n },\n };\n\n protected url: SkyActionButtonPermalink = {\n url: 'https://www.stackblitz.com',\n };\n}\n","<sky-action-button-container>\n <sky-action-button [permalink]=\"url\">\n <sky-action-button-icon iconType=\"link\" />\n <sky-action-button-header> Open a link </sky-action-button-header>\n <sky-action-button-details> Open a link. </sky-action-button-details>\n </sky-action-button>\n\n <sky-action-button [permalink]=\"routerlink\">\n <sky-action-button-icon iconType=\"link\" />\n <sky-action-button-header> Open a router link </sky-action-button-header>\n <sky-action-button-details> Open a router link. </sky-action-button-details>\n </sky-action-button>\n</sky-action-button-container>\n","import { Component } from '@angular/core';\nimport { SkyActionButtonModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-layout-action-button-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyActionButtonModule],\n})\nexport class LayoutActionButtonBasicExampleComponent {\n protected filterActionClick(): void {\n alert('Filter action clicked');\n }\n\n protected openActionClick(): void {\n alert('Open action clicked');\n }\n}\n","<sky-action-button-container>\n <sky-action-button (actionClick)=\"filterActionClick()\">\n <sky-action-button-icon iconType=\"filter\" />\n <sky-action-button-header> Build a new list </sky-action-button-header>\n <sky-action-button-details>\n Start from scratch and fine-tune with filters.\n </sky-action-button-details>\n </sky-action-button>\n\n <sky-action-button (actionClick)=\"openActionClick()\">\n <sky-action-button-icon iconType=\"folder-open-o\" />\n <sky-action-button-header> Open a saved list </sky-action-button-header>\n <sky-action-button-details>\n Open a list with filters saved in the web view.\n </sky-action-button-details>\n </sky-action-button>\n</sky-action-button-container>\n","import { Component } from '@angular/core';\nimport { SkyBackToTopModule } from '@skyux/layout';\nimport { SkyRepeaterModule } from '@skyux/lists';\n\n@Component({\n selector: 'app-layout-back-to-top-repeater-example',\n templateUrl: './example.component.html',\n imports: [SkyBackToTopModule, SkyRepeaterModule],\n})\nexport class LayoutBackToTopRepeaterExampleComponent {\n public personList = [\n {\n name: 'Barbara Durr',\n address: '7436 Fieldstone Court',\n },\n {\n name: 'Colton Chamberlain',\n address: '342 Foster Court',\n },\n {\n name: 'Alva Clifford',\n address: '657 West Rockville Street',\n },\n {\n name: 'Tonja Sanderson',\n address: '7004 Third Street',\n },\n {\n name: 'Paulene Baum',\n address: '9309 Mammoth Street',\n },\n {\n name: 'Jessy Witherspoon',\n address: '43 Canal Street',\n },\n {\n name: 'Solomon Hurley',\n address: '667 Wakehurst Circle',\n },\n {\n name: 'Calandra Geer',\n address: '164 Applegate Drive',\n },\n {\n name: 'Latrice Ashmore',\n address: '7965 Lake Road',\n },\n {\n name: 'Rod Tomlinson',\n address: '9664 Newport Drive',\n },\n {\n name: 'Cristen Sizemore',\n address: '17 Edgefield Street',\n },\n {\n name: 'Kristeen Lunsford',\n address: '245 Green Lake Street',\n },\n {\n name: 'Jack Lovett',\n address: '73 Academy Street',\n },\n {\n name: 'Elwood Farris',\n address: '90 Smoky Hollow Court',\n },\n {\n name: 'Ilene Woo',\n address: '71 Pumpkin Hill Street',\n },\n {\n name: 'Kanesha Hutto',\n address: '107 East Cooper Street',\n },\n {\n name: 'Nick Bourne',\n address: '62 Evergreen Street',\n },\n {\n name: 'Ed Sipes',\n address: '8824 Hill Street',\n },\n {\n name: 'Wonda Lumpkin',\n address: '134 North Warren Street',\n },\n {\n name: 'Cheyenne Lightfoot',\n address: '184 Pierce Avenue',\n },\n {\n name: 'Darcel Lenz',\n address: '9408 Beechwood Street',\n },\n {\n name: 'Martine Rocha',\n address: '871 Shadow Brook Street',\n },\n {\n name: 'Cherelle Connell',\n address: '649 Glenwood Street',\n },\n {\n name: 'Molly Seymour',\n address: '386 E. George Street',\n },\n {\n name: 'Clarice Overton',\n address: '16 Manchester Street',\n },\n {\n name: 'Eliza Vanhorn',\n address: '8232 S. Augusta Street',\n },\n ];\n}\n","<sky-repeater skyBackToTop>\n @for (person of personList; track person) {\n <sky-repeater-item>\n <sky-repeater-item-title>\n {{ person.name }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ person.address }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n }\n</sky-repeater>\n","import { Component } from '@angular/core';\nimport { SkyBoxModule } from '@skyux/layout';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\n@Component({\n selector: 'app-layout-box-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyBoxModule, SkyDropdownModule],\n})\nexport class LayoutBoxBasicExampleComponent {}\n","<sky-box\n data-sky-id=\"box-example\"\n headingText=\"Box header\"\n helpPopoverContent=\"Example help content for box\"\n>\n <sky-box-controls>\n <sky-dropdown buttonType=\"context-menu\" label=\"Box example context menu\">\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button type=\"button\">Action 1</button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button type=\"button\">Action 2</button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n </sky-box-controls>\n <sky-box-content>\n <p>Box content</p>\n </sky-box-content>\n</sky-box>\n","import { Component } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SkyCheckboxModule } from '@skyux/forms';\nimport { SkyCardModule } from '@skyux/layout';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\n@Component({\n selector: 'app-layout-card-basic-example',\n templateUrl: './example.component.html',\n imports: [FormsModule, SkyCardModule, SkyCheckboxModule, SkyDropdownModule],\n})\nexport class LayoutCardBasicExampleComponent {\n protected showAction = true;\n protected showCheckbox = true;\n protected showContent = true;\n protected showTitle = true;\n\n protected triggerAlert(): void {\n alert('Action clicked!');\n }\n}\n","<sky-card [selectable]=\"showCheckbox\">\n @if (showTitle) {\n <sky-card-title> Large card </sky-card-title>\n }\n @if (showContent) {\n <sky-card-content>\n This card examplenstrates the amount of space that is available for a card\n that uses the default large size. If the content does not require this\n much space, you can set the card size to small. The type of content to\n display in the body of a card varies based on what the card represents and\n whether it prompts users to action.\n </sky-card-content>\n }\n @if (showAction) {\n <sky-card-actions>\n <button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"triggerAlert()\"\n >\n Action\n </button>\n </sky-card-actions>\n }\n</sky-card>\n<sky-card size=\"small\" [selectable]=\"showCheckbox\">\n @if (showTitle) {\n <sky-card-title> Small card </sky-card-title>\n }\n @if (showContent) {\n <sky-card-content>\n This card examplenstrates the reduced amount of space that is available\n when you set the card size to small.\n </sky-card-content>\n }\n @if (showAction) {\n <sky-card-actions>\n <sky-dropdown buttonType=\"context-menu\">\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button type=\"button\" (click)=\"triggerAlert()\">Action</button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n </sky-card-actions>\n }\n</sky-card>\n\n<ul class=\"sky-list-unstyled\">\n <li>\n <sky-checkbox labelText=\"Show title\" [(ngModel)]=\"showTitle\" />\n </li>\n <li>\n <sky-checkbox labelText=\"Show content\" [(ngModel)]=\"showContent\" />\n </li>\n <li>\n <sky-checkbox labelText=\"Show action\" [(ngModel)]=\"showAction\" />\n </li>\n <li>\n <sky-checkbox labelText=\"Show checkbox\" [(ngModel)]=\"showCheckbox\" />\n </li>\n</ul>\n","import { Component } from '@angular/core';\nimport { SkyBoxModule } from '@skyux/layout';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\n@Component({\n selector: 'app-layout-box-help-key-example',\n templateUrl: './example.component.html',\n imports: [SkyBoxModule, SkyDropdownModule],\n})\nexport class LayoutBoxHelpKeyExampleComponent {}\n","<sky-box data-sky-id=\"box-example\" headingText=\"Box header\" helpKey=\"box-help\">\n <sky-box-controls>\n <sky-dropdown buttonType=\"context-menu\" label=\"Box example context menu\">\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button type=\"button\">Action 1</button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button type=\"button\">Action 2</button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n </sky-box-controls>\n <sky-box-content>\n <p>Box content</p>\n </sky-box-content>\n</sky-box>\n","import { Component } from '@angular/core';\nimport { SkyDescriptionListModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-layout-description-list-help-key-example',\n templateUrl: './example.component.html',\n imports: [SkyDescriptionListModule],\n})\nexport class LayoutDescriptionListHelpKeyExampleComponent {\n protected items: { term: string; description: string; helpKey?: string }[] = [\n {\n term: 'College',\n description: 'Humanities and Social Sciences',\n helpKey: 'college-help',\n },\n {\n term: 'Department',\n description: 'Anthropology',\n },\n {\n term: 'Advisor',\n description: 'Cathy Green',\n },\n {\n term: 'Class year',\n description: '2024',\n },\n ];\n}\n","<sky-description-list mode=\"horizontal\">\n @for (item of items; track item) {\n <sky-description-list-content [helpKey]=\"item.helpKey\">\n <sky-description-list-term>\n {{ item.term }}\n </sky-description-list-term>\n <sky-description-list-description>\n {{ item.description }}\n </sky-description-list-description>\n </sky-description-list-content>\n }\n</sky-description-list>\n","import { Component } from '@angular/core';\nimport { SkyDefinitionListModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-layout-definition-list-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyDefinitionListModule],\n})\nexport class LayoutDefinitionListBasicExampleComponent {\n protected items: { label: string; value?: string }[] = [\n {\n label: 'Field 1',\n value: 'Field 1 value',\n },\n {\n label: 'Field 2',\n value: 'Field 2 value',\n },\n {\n label: 'Field 3',\n value: undefined,\n },\n {\n label: 'Field 4',\n value: 'Field 4 value',\n },\n ];\n}\n","<sky-definition-list>\n <sky-definition-list-heading>\n Definition list heading\n </sky-definition-list-heading>\n @for (item of items; track item) {\n <sky-definition-list-content>\n <sky-definition-list-label>\n {{ item.label }}\n </sky-definition-list-label>\n <sky-definition-list-value>\n {{ item.value }}\n </sky-definition-list-value>\n </sky-definition-list-content>\n }\n</sky-definition-list>\n","import { Component } from '@angular/core';\nimport { SkyHelpInlineModule } from '@skyux/help-inline';\nimport { SkyDescriptionListModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-layout-description-list-inline-help-example',\n templateUrl: './example.component.html',\n imports: [SkyDescriptionListModule, SkyHelpInlineModule],\n})\nexport class LayoutDescriptionListInlineHelpExampleComponent {\n protected items: { term: string; description: string; helpText?: string }[] =\n [\n {\n term: 'College',\n description: 'Humanities and Social Sciences',\n },\n {\n term: 'Department',\n description: 'Anthropology',\n },\n {\n term: 'Advisor',\n description: 'Cathy Green',\n helpText: 'The faculty member who advises the student.',\n },\n {\n term: 'Class year',\n description: '2024',\n },\n ];\n\n protected onActionClick(): void {\n alert('Help inline button clicked!');\n }\n}\n","<sky-description-list mode=\"horizontal\">\n @for (item of items; track item) {\n <sky-description-list-content [helpPopoverContent]=\"item.helpText\">\n <sky-description-list-term>\n {{ item.term }}\n <sky-help-inline\n class=\"sky-control-help\"\n ariaLabel=\"Information about {{ item.term }}\"\n (actionClick)=\"onActionClick()\"\n />\n </sky-description-list-term>\n <sky-description-list-description>\n {{ item.description }}\n </sky-description-list-description>\n </sky-description-list-content>\n }\n</sky-description-list>\n","import { Component } from '@angular/core';\nimport { SkyDescriptionListModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-layout-description-list-horizontal-example',\n templateUrl: './example.component.html',\n imports: [SkyDescriptionListModule],\n})\nexport class LayoutDescriptionListHorizontalExampleComponent {\n protected items: { term: string; description: string; helpText?: string }[] =\n [\n {\n term: 'College',\n description: 'Humanities and Social Sciences',\n },\n {\n term: 'Department',\n description: 'Anthropology',\n },\n {\n term: 'Advisor',\n description: 'Cathy Green',\n helpText: 'The faculty member who advises the student.',\n },\n {\n term: 'Class year',\n description: '2024',\n },\n ];\n}\n","<sky-description-list mode=\"horizontal\">\n @for (item of items; track item) {\n <sky-description-list-content [helpPopoverContent]=\"item.helpText\">\n <sky-description-list-term>\n {{ item.term }}\n </sky-description-list-term>\n <sky-description-list-description>\n {{ item.description }}\n </sky-description-list-description>\n </sky-description-list-content>\n }\n</sky-description-list>\n","import { Component } from '@angular/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyInlineDeleteModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-layout-inline-delete-custom-example',\n templateUrl: './example.component.html',\n styleUrls: ['./example.component.scss'],\n imports: [SkyIconModule, SkyInlineDeleteModule],\n})\nexport class LayoutInlineDeleteCustomExampleComponent {\n protected deleting = false;\n protected pending = false;\n\n protected deleteItem(): void {\n this.deleting = true;\n }\n\n protected onCancelTriggered(): void {\n this.deleting = false;\n }\n\n protected onDeleteTriggered(): void {\n setTimeout(() => {\n this.pending = false;\n this.deleting = false;\n\n alert(\n 'Custom element deletion was triggered. In a real scenario the item would be removed. Item was not removed just for example purposes.',\n );\n }, 3000);\n\n this.pending = true;\n }\n}\n","<div class=\"inline-delete-container\">\n <strong>Custom content</strong>\n <div>\n <button\n class=\"sky-btn sky-btn-danger inline-delete-trigger\"\n type=\"button\"\n (click)=\"deleteItem()\"\n >\n <sky-icon icon=\"trash\" />\n </button>\n </div>\n @if (deleting) {\n <sky-inline-delete\n [pending]=\"pending\"\n (cancelTriggered)=\"onCancelTriggered()\"\n (deleteTriggered)=\"onDeleteTriggered()\"\n />\n }\n</div>\n","import { Component } from '@angular/core';\nimport { SkyDescriptionListModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-layout-description-list-long-description-example',\n templateUrl: './example.component.html',\n imports: [SkyDescriptionListModule],\n})\nexport class LayoutDescriptionListLongDescriptionExampleComponent {\n protected items: { term: string; description: string }[] = [\n {\n term: 'Good Health and Well-being',\n description:\n 'Ensure healthy lives and promote well-being for all at all ages.',\n },\n {\n term: 'Quality Education',\n description:\n 'Ensure inclusive and equitable quality education and promote lifelong learning opportunities for all.',\n },\n {\n term: 'Gender Equity',\n description: 'Achieve gender equality and empower all women and girls.',\n },\n ];\n}\n","<sky-description-list mode=\"longDescription\">\n @for (item of items; track item) {\n <sky-description-list-content>\n <sky-description-list-term>\n {{ item.term }}\n </sky-description-list-term>\n <sky-description-list-description>\n {{ item.description }}\n </sky-description-list-description>\n </sky-description-list-content>\n }\n</sky-description-list>\n","import { Component } from '@angular/core';\nimport { SkyInlineDeleteModule } from '@skyux/layout';\nimport { SkyRepeaterModule } from '@skyux/lists';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\ninterface InlineRepeaterDemoItem {\n title: string;\n cost: string;\n description: string;\n}\n\n@Component({\n selector: 'app-layout-inline-delete-repeater-example',\n templateUrl: './example.component.html',\n imports: [SkyDropdownModule, SkyInlineDeleteModule, SkyRepeaterModule],\n})\nexport class LayoutInlineDeleteRepeaterExampleComponent {\n protected originalRepeaterDemoItems: InlineRepeaterDemoItem[] = [\n {\n title: 'Individual',\n cost: '$75.00',\n description: '1 ticket',\n },\n {\n title: 'Foursome',\n cost: '$250.00',\n description: '4 tickets',\n },\n {\n title: 'Hole sponsor',\n cost: '$1,000.00',\n description: '8 tickets',\n },\n ];\n\n protected repeaterDemoItems = this.originalRepeaterDemoItems;\n protected repeaterDemoShownInlineDeletes: string[] = [];\n\n protected showInlineDelete(title: string): void {\n this.repeaterDemoShownInlineDeletes.push(title);\n }\n\n protected deleteItem(title: string): void {\n this.repeaterDemoItems = this.repeaterDemoItems.filter(\n (exampleItem: InlineRepeaterDemoItem) => exampleItem.title !== title,\n );\n\n this.repeaterDemoShownInlineDeletes =\n this.repeaterDemoShownInlineDeletes.filter(\n (exampleItem: string) => exampleItem !== title,\n );\n }\n\n protected cancelDeletion(title: string): void {\n this.repeaterDemoShownInlineDeletes =\n this.repeaterDemoShownInlineDeletes.filter(\n (exampleItem: string) => exampleItem !== title,\n );\n }\n\n protected onResetClick(): void {\n this.repeaterDemoItems = this.originalRepeaterDemoItems;\n this.repeaterDemoShownInlineDeletes = [];\n }\n}\n","<sky-repeater style=\"width: 100%\">\n @for (item of repeaterDemoItems; track item) {\n <sky-repeater-item>\n <sky-repeater-item-context-menu>\n <sky-dropdown buttonType=\"context-menu\">\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button type=\"button\" (click)=\"showInlineDelete(item.title)\">\n Delete\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n </sky-repeater-item-context-menu>\n <sky-repeater-item-title class=\"sky-example-inline-delete-flex\">\n <div>\n {{ item.title }}\n </div>\n <div>\n {{ item.cost }}\n </div>\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ item.description }}\n </sky-repeater-item-content>\n @if (repeaterDemoShownInlineDeletes.indexOf(item.title) >= 0) {\n <sky-inline-delete\n (cancelTriggered)=\"cancelDeletion(item.title)\"\n (deleteTriggered)=\"deleteItem(item.title)\"\n />\n }\n </sky-repeater-item>\n }\n</sky-repeater>\n\n<button class=\"sky-btn sky-btn-primary\" type=\"button\" (click)=\"onResetClick()\">\n Reset Repeater\n</button>\n","import { Component } from '@angular/core';\nimport { SkyDescriptionListModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-layout-description-list-vertical-example',\n templateUrl: './example.component.html',\n imports: [SkyDescriptionListModule],\n})\nexport class LayoutDescriptionListVerticalExampleComponent {\n protected items: { term: string; description: string; helpText?: string }[] =\n [\n {\n term: 'College',\n description: 'Humanities and Social Sciences',\n },\n {\n term: 'Department',\n description: 'Anthropology',\n },\n {\n term: 'Advisor',\n description: 'Cathy Green',\n helpText: 'The faculty member who advises the student.',\n },\n {\n term: 'Class year',\n description: '2024',\n },\n ];\n}\n","<sky-description-list mode=\"vertical\">\n @for (item of items; track item) {\n <sky-description-list-content [helpPopoverContent]=\"item.helpText\">\n <sky-description-list-term>\n {{ item.term }}\n </sky-description-list-term>\n <sky-description-list-description>\n {{ item.description }}\n </sky-description-list-description>\n </sky-description-list-content>\n }\n</sky-description-list>\n","import { Component } from '@angular/core';\nimport { SkyFluidGridModule, SkyPageModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-layout-page-layout-fit-example',\n templateUrl: './example.component.html',\n styleUrls: ['./example.component.scss'],\n imports: [SkyFluidGridModule, SkyPageModule],\n})\nexport class LayoutPageLayoutFitExampleComponent {}\n","<sky-page layout=\"fit\">\n <div class=\"layout-fit-example\">\n <div class=\"layout-fit-example-header\">\n <sky-fluid-grid>\n <sky-row>\n <sky-column>\n <h1>Fit layout example</h1>\n </sky-column>\n </sky-row>\n <sky-row>\n <sky-column>\n <p class=\"sky-margin-stacked-xl\">\n Elements in a page with a layout of \"fit\" can be absolutely\n positioned inside it. This is especially powerful when combined\n with content that uses\n <a href=\"https://css-tricks.com/snippets/css/a-guide-to-flexbox\"\n >CSS flexbox</a\n >. This example uses flexbox to display a header with a variable\n height and content that fills the rest of the available viewport.\n </p>\n </sky-column>\n </sky-row>\n </sky-fluid-grid>\n </div>\n <div class=\"layout-fit-example-content\">\n <div class=\"anchored-item anchored-item-left\">Left</div>\n <div class=\"anchored-item anchored-item-top\">Top</div>\n <div class=\"anchored-item anchored-item-right\">Right</div>\n <div class=\"anchored-item anchored-item-bottom\">Bottom</div>\n <div class=\"anchored-item anchored-item-center\">Center</div>\n </div>\n </div>\n</sky-page>\n","import { Component } from '@angular/core';\nimport { SkyTextExpandModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-layout-text-expand-inline-example',\n templateUrl: './example.component.html',\n imports: [SkyTextExpandModule],\n})\nexport class LayoutTextExpandInlineExampleComponent {\n protected longText =\n 'The text expand component truncates long blocks of text with an ellipsis and a link to expand the text. Users select the link to expand the full text inline unless it exceeds limits on text characters or newline characters. If the text exceeds those limits, then it expands in a modal view instead. The component does not truncate text that is shorter than a specified threshold, and by default, it removes newline characters from truncated text.';\n}\n","<sky-text-expand [text]=\"longText\" />\n","import { Component } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SkyAvatarModule } from '@skyux/avatar';\nimport { SkyCheckboxModule } from '@skyux/forms';\nimport {\n SkyAlertModule,\n SkyKeyInfoModule,\n SkyLabelModule,\n} from '@skyux/indicators';\nimport { SkyPageSummaryModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-layout-page-summary-basic-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n SkyAlertModule,\n SkyAvatarModule,\n SkyCheckboxModule,\n SkyKeyInfoModule,\n SkyLabelModule,\n SkyPageSummaryModule,\n ],\n})\nexport class LayoutPageSummaryBasicExampleComponent {\n protected name = 'Robert C. Hernandez';\n protected showAlert = true;\n protected showContent = true;\n protected showImage = true;\n protected showKeyInfo = true;\n protected showStatus = true;\n protected showSubtitle = true;\n protected showTitle = true;\n}\n","<sky-page-summary>\n @if (showAlert) {\n <sky-page-summary-alert>\n <sky-alert alertType=\"info\"> This is an alert. </sky-alert>\n </sky-page-summary-alert>\n }\n @if (showImage) {\n <sky-page-summary-image>\n <sky-avatar [name]=\"name\" [canChange]=\"true\" />\n </sky-page-summary-image>\n }\n @if (showTitle) {\n <sky-page-summary-title>\n {{ name }}\n </sky-page-summary-title>\n }\n @if (showSubtitle) {\n <sky-page-summary-subtitle> Board member </sky-page-summary-subtitle>\n }\n @if (showStatus) {\n <sky-page-summary-status>\n <sky-label labelType=\"success\"> Fundraiser </sky-label>\n <sky-label> Inactive </sky-label>\n </sky-page-summary-status>\n }\n @if (showContent) {\n <sky-page-summary-content>\n This is the arbitrary content section. You can display any kind of content\n to complement the content on a page. We recommend that you display content\n to support the key tasks of users of users who visit the page. We also\n recommend that you keep in mind the context of how users will use the\n content and limit the amount of content to avoid overloading the summary.\n </sky-page-summary-content>\n }\n @if (showKeyInfo) {\n <sky-page-summary-key-info>\n <sky-key-info>\n <sky-key-info-value> $1,500 </sky-key-info-value>\n <sky-key-info-label> Largest gift </sky-key-info-label>\n </sky-key-info>\n <sky-key-info>\n <sky-key-info-value> 37 </sky-key-info-value>\n <sky-key-info-label> Total gifts </sky-key-info-label>\n </sky-key-info>\n </sky-page-summary-key-info>\n }\n</sky-page-summary>\n\n<ul class=\"sky-list-unstyled\">\n <li>\n <sky-checkbox labelText=\"Show title\" [(ngModel)]=\"showTitle\" />\n </li>\n <li>\n <sky-checkbox labelText=\"Show subtitle\" [(ngModel)]=\"showSubtitle\" />\n </li>\n <li>\n <sky-checkbox labelText=\"Show image\" [(ngModel)]=\"showImage\" />\n </li>\n <li>\n <sky-checkbox labelText=\"Show record status\" [(ngModel)]=\"showStatus\" />\n </li>\n <li>\n <sky-checkbox labelText=\"Show key information\" [(ngModel)]=\"showKeyInfo\" />\n </li>\n <li>\n <sky-checkbox\n labelText=\"Show arbitrary content\"\n [(ngModel)]=\"showContent\"\n />\n </li>\n <li>\n <sky-checkbox labelText=\"Show alert\" [(ngModel)]=\"showAlert\" />\n </li>\n</ul>\n","import { Component } from '@angular/core';\nimport { SkyTextExpandModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-layout-text-expand-modal-example',\n templateUrl: './example.component.html',\n imports: [SkyTextExpandModule],\n})\nexport class LayoutTextExpandModalExampleComponent {\n protected longText =\n 'The text expand component truncates long blocks of text with an ellipsis and a link to expand the text. Users select the link to expand the full text inline unless it exceeds limits on text characters or newline characters. If the text exceeds those limits, then it expands in a modal view instead. The component does not truncate text that is shorter than a specified threshold, and by default, it removes newline characters from truncated text.';\n}\n","<sky-text-expand [text]=\"longText\" [maxExpandedLength]=\"100\" />\n","import { Component } from '@angular/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyToolbarModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-layout-toolbar-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyIconModule, SkyToolbarModule],\n})\nexport class LayoutToolbarBasicExampleComponent {\n public onButtonClicked(buttonText: string): void {\n alert(buttonText + ' clicked!');\n }\n}\n","<sky-toolbar data-sky-id=\"basic-toolbar\">\n <sky-toolbar-item data-sky-id=\"toolbar-item-1\">\n <button\n class=\"sky-btn sky-btn-primary\"\n type=\"button\"\n (click)=\"onButtonClicked('Button 1')\"\n >\n Button 1\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item data-sky-id=\"toolbar-item-2\">\n <button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"onButtonClicked('Button 2')\"\n >\n Button 2\n </button>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <button\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Sort descending\"\n type=\"button\"\n (click)=\"onButtonClicked('Expand')\"\n >\n <sky-icon icon=\"angle-double-down\" />\n </button>\n <button\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Sort ascending\"\n type=\"button\"\n (click)=\"onButtonClicked('Collapse')\"\n >\n <sky-icon icon=\"angle-double-up\" />\n </button>\n </sky-toolbar-view-actions>\n</sky-toolbar>\n","import { Component } from '@angular/core';\nimport { SkyTextExpandModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-layout-text-expand-newline-example',\n templateUrl: './example.component.html',\n imports: [SkyTextExpandModule],\n})\nexport class LayoutTextExpandNewlineExampleComponent {\n protected newlinesText =\n 'The text expand component truncates long blocks of text with an ellipsis and a link to expand the text.\\nUsers select the link to expand the full text inline unless it exceeds limits on text characters or newline characters.\\nIf the text exceeds those limits, then it expands in a modal view instead.\\nThe component does not truncate text that is shorter than a specified threshold, and by default, it removes newline characters from truncated text.';\n}\n","<sky-text-expand [text]=\"newlinesText\" [truncateNewlines]=\"false\" />\n","import { Component } from '@angular/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyToolbarModule } from '@skyux/layout';\n\n@Component({\n selector: 'app-layout-toolbar-sectioned-example',\n templateUrl: './example.component.html',\n imports: [SkyIconModule, SkyToolbarModule],\n})\nexport class LayoutToolbarSectionedExampleComponent {\n public onButtonClicked(buttonText: string): void {\n alert(buttonText + ' clicked!');\n }\n}\n","<sky-toolbar data-sky-id=\"sectioned-toolbar\">\n <sky-toolbar-section data-sky-id=\"top-section\">\n <sky-toolbar-item data-sky-id=\"toolbar-item-1\">\n <button\n class=\"sky-btn sky-btn-primary\"\n type=\"button\"\n (click)=\"onButtonClicked('Button 1')\"\n >\n Button 1\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item data-sky-id=\"toolbar-item-2\">\n <button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"onButtonClicked('Button 2')\"\n >\n Button 2\n </button>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <button\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Sort descending\"\n type=\"button\"\n (click)=\"onButtonClicked('Expand')\"\n >\n <sky-icon icon=\"angle-double-down\" />\n </button>\n <button\n class=\"sky-btn sky-btn-default sky-btn-icon\"\n title=\"Sort ascending\"\n type=\"button\"\n (click)=\"onButtonClicked('Collapse')\"\n >\n <sky-icon icon=\"angle-double-up\" />\n </button>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n <sky-toolbar-section data-sky-id=\"bottom-section\">\n <sky-toolbar-item data-sky-id=\"sort-button\">\n <button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"onButtonClicked('Sort')\"\n >\n <sky-icon icon=\"sort\" />\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item data-sky-id=\"filter-button\">\n <button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"onButtonClicked('Filter')\"\n >\n <sky-icon icon=\"filter\" />\n </button>\n </sky-toolbar-item>\n </sky-toolbar-section>\n</sky-toolbar>\n","import { Component } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SkyIdModule } from '@skyux/core';\nimport { SkyCheckboxModule, SkyInputBoxModule } from '@skyux/forms';\nimport { SkyToolbarModule } from '@skyux/layout';\nimport { SkyFilterModule, SkyRepeaterModule } from '@skyux/lists';\n\ninterface Filter {\n name: string;\n value: string | boolean;\n}\n\ninterface Fruit {\n name: string;\n type: string;\n color: string;\n}\n\n@Component({\n selector: 'app-lists-filter-inline-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n SkyCheckboxModule,\n SkyIdModule,\n SkyFilterModule,\n SkyInputBoxModule,\n SkyRepeaterModule,\n SkyToolbarModule,\n ],\n})\nexport class ListsFilterInlineExampleComponent {\n protected appliedFilters: Filter[] = [];\n protected filteredItems: Fruit[];\n protected filtersActive = false;\n protected fruitType = 'any';\n protected hideOrange = false;\n\n protected items: Fruit[] = [\n {\n name: 'Orange',\n type: 'citrus',\n color: 'orange',\n },\n {\n name: 'Mango',\n type: 'other',\n color: 'orange',\n },\n {\n name: 'Lime',\n type: 'citrus',\n color: 'green',\n },\n {\n name: 'Strawberry',\n type: 'berry',\n color: 'red',\n },\n {\n name: 'Blueberry',\n type: 'berry',\n color: 'blue',\n },\n ];\n\n protected showInlineFilters = false;\n\n constructor() {\n this.filteredItems = this.items.slice();\n }\n\n protected filterButtonClicked(): void {\n this.showInlineFilters = !this.showInlineFilters;\n }\n\n protected fruitTypeChange(newValue: string): void {\n this.fruitType = newValue;\n this.#setFilterActiveState();\n }\n\n protected hideOrangeChange(newValue: boolean): void {\n this.hideOrange = newValue;\n this.#setFilterActiveState();\n }\n\n #setFilterActiveState(): void {\n this.appliedFilters = [];\n\n if (this.fruitType !== 'any') {\n this.appliedFilters.push({\n name: 'fruitType',\n value: this.fruitType,\n });\n }\n\n if (this.hideOrange) {\n this.appliedFilters.push({\n name: 'hideOrange',\n value: true,\n });\n }\n\n this.filtersActive = this.appliedFilters.length > 0;\n this.filteredItems = this.#filterItems(this.items, this.appliedFilters);\n }\n\n #orangeFilterFailed(filter: Filter, item: Fruit): boolean {\n return (\n filter.name === 'hideOrange' && !!filter.value && item.color === 'orange'\n );\n }\n\n #fruitTypeFilterFailed(filter: Filter, item: Fruit): boolean {\n return (\n filter.name === 'fruitType' &&\n filter.value !== 'any' &&\n filter.value !== item.type\n );\n }\n\n #itemIsShown(filters: Filter[], item: Fruit): boolean {\n let passesFilter = true,\n j: number;\n\n for (j = 0; j < filters.length; j++) {\n if (this.#orangeFilterFailed(filters[j], item)) {\n passesFilter = false;\n } else if (this.#fruitTypeFilterFailed(filters[j], item)) {\n passesFilter = false;\n }\n }\n\n return passesFilter;\n }\n\n #filterItems(items: Fruit[], filters: Filter[]): Fruit[] {\n let i: number, passesFilter: boolean;\n const result: Fruit[] = [];\n\n for (i = 0; i < items.length; i++) {\n passesFilter = this.#itemIsShown(filters, items[i]);\n if (passesFilter) {\n result.push(items[i]);\n }\n }\n\n return result;\n }\n}\n","<sky-toolbar>\n <sky-toolbar-section>\n <sky-toolbar-item>\n <sky-filter-button\n [active]=\"filtersActive\"\n [ariaControls]=\"inlineFilters.id\"\n [ariaExpanded]=\"showInlineFilters\"\n [showButtonText]=\"true\"\n (filterButtonClick)=\"filterButtonClicked()\"\n />\n </sky-toolbar-item>\n </sky-toolbar-section>\n</sky-toolbar>\n\n<div #inlineFilters skyId [hidden]=\"!showInlineFilters\">\n <sky-filter-inline>\n <sky-filter-inline-item>\n <sky-input-box labelText=\"Fruit type\">\n <select [ngModel]=\"fruitType\" (ngModelChange)=\"fruitTypeChange($event)\">\n <option value=\"any\">Any fruit</option>\n <option value=\"citrus\">Citrus</option>\n <option value=\"berry\">Berry</option>\n </select>\n </sky-input-box>\n </sky-filter-inline-item>\n <sky-filter-inline-item>\n <sky-checkbox\n labelText=\"Hide orange fruits\"\n [ngModel]=\"hideOrange\"\n (ngModelChange)=\"hideOrangeChange($event)\"\n />\n </sky-filter-inline-item>\n </sky-filter-inline>\n</div>\n\n<sky-repeater expandMode=\"none\">\n @for (item of filteredItems; track item) {\n <sky-repeater-item>\n <sky-repeater-item-title>\n {{ item.name }}\n </sky-repeater-item-title>\n </sky-repeater-item>\n }\n</sky-repeater>\n","import { Filter } from './filter';\n\nexport class FilterModalContext {\n public appliedFilters: Filter[] = [];\n}\n","import { Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SkyCheckboxModule, SkyInputBoxModule } from '@skyux/forms';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\n\nimport { Filter } from './filter';\nimport { FilterModalContext } from './filter-modal-context';\n\n@Component({\n selector: 'app-filter-modal',\n templateUrl: './filter-modal.component.html',\n imports: [FormsModule, SkyCheckboxModule, SkyInputBoxModule, SkyModalModule],\n})\nexport class FilterModalComponent {\n protected hideOrange = false;\n protected fruitType = 'any';\n\n protected readonly context = inject(FilterModalContext);\n protected readonly instance = inject(SkyModalInstance);\n\n constructor() {\n if (this.context.appliedFilters.length > 0) {\n this.#setFormFilters(this.context.appliedFilters);\n } else {\n this.clearAllFilters();\n }\n }\n\n protected applyFilters(): void {\n const result = this.#getAppliedFiltersArray();\n this.instance.save(result);\n }\n\n protected cancel(): void {\n this.instance.cancel();\n }\n\n protected clearAllFilters(): void {\n this.hideOrange = false;\n this.fruitType = 'any';\n }\n\n #getAppliedFiltersArray(): Filter[] {\n const appliedFilters: Filter[] = [];\n\n if (this.fruitType !== 'any') {\n appliedFilters.push({\n name: 'fruitType',\n value: this.fruitType,\n label: this.fruitType,\n });\n }\n\n if (this.hideOrange) {\n appliedFilters.push({\n name: 'hideOrange',\n value: true,\n label: 'hide orange fruits',\n });\n }\n\n return appliedFilters;\n }\n\n #setFormFilters(appliedFilters: Filter[]): void {\n for (const appliedFilter of appliedFilters) {\n if (appliedFilter.name === 'fruitType') {\n this.fruitType = `${appliedFilter.value}`;\n }\n\n if (appliedFilter.name === 'hideOrange') {\n this.hideOrange = !!appliedFilter.value;\n }\n }\n }\n}\n","<sky-modal headingText=\"Filter food preferences\">\n <sky-modal-content>\n <sky-input-box labelText=\"Fruit type\" stacked=\"true\">\n <select [(ngModel)]=\"fruitType\">\n <option value=\"any\">Any fruit</option>\n <option value=\"citrus\">Citrus</option>\n <option value=\"berry\">Berry</option>\n </select>\n </sky-input-box>\n <sky-checkbox labelText=\"Hide orange fruits\" [(ngModel)]=\"hideOrange\" />\n </sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-primary\"\n type=\"button\"\n (click)=\"applyFilters()\"\n >\n Apply\n </button>\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n (click)=\"clearAllFilters()\"\n >\n Clear\n </button>\n <button class=\"sky-btn sky-btn-link\" type=\"button\" (click)=\"cancel()\">\n Cancel\n </button>\n </sky-modal-footer>\n</sky-modal>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n inject,\n} from '@angular/core';\nimport { SkyToolbarModule } from '@skyux/layout';\nimport { SkyFilterModule, SkyRepeaterModule } from '@skyux/lists';\nimport { SkyModalCloseArgs, SkyModalService } from '@skyux/modals';\n\nimport { Filter } from './filter';\nimport { FilterModalContext } from './filter-modal-context';\nimport { FilterModalComponent } from './filter-modal.component';\nimport { Fruit } from './fruit';\n\n@Component({\n selector: 'app-lists-filter-modal-example',\n templateUrl: './example.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyFilterModule, SkyRepeaterModule, SkyToolbarModule],\n})\nexport class ListsFilterModalExampleComponent {\n protected appliedFilters: Filter[] = [];\n protected filteredItems: Fruit[];\n protected items: Fruit[] = [\n {\n name: 'Orange',\n type: 'citrus',\n color: 'orange',\n },\n {\n name: 'Mango',\n type: 'other',\n color: 'orange',\n },\n {\n name: 'Lime',\n type: 'citrus',\n color: 'green',\n },\n {\n name: 'Strawberry',\n type: 'berry',\n color: 'red',\n },\n {\n name: 'Blueberry',\n type: 'berry',\n color: 'blue',\n },\n ];\n\n protected showInlineFilters = false;\n\n readonly #changeDetectorRef = inject(ChangeDetectorRef);\n readonly #modalSvc = inject(SkyModalService);\n\n constructor() {\n this.filteredItems = this.items.slice();\n }\n\n protected onDismiss(index: number): void {\n this.appliedFilters.splice(index, 1);\n this.filteredItems = this.#filterItems(this.items, this.appliedFilters);\n }\n\n protected onInlineFilterButtonClicked(): void {\n this.showInlineFilters = !this.showInlineFilters;\n }\n\n protected onModalFilterButtonClick(): void {\n const modalInstance = this.#modalSvc.open(FilterModalComponent, [\n {\n provide: FilterModalContext,\n useValue: {\n appliedFilters: this.appliedFilters,\n },\n },\n ]);\n\n modalInstance.closed.subscribe((result: SkyModalCloseArgs) => {\n if (result.reason === 'save') {\n this.appliedFilters = (result.data as Filter[]).slice();\n this.filteredItems = this.#filterItems(this.items, this.appliedFilters);\n this.#changeDetectorRef.markForCheck();\n }\n });\n }\n\n #fruitTypeFilterFailed(filter: Filter, item: Fruit): boolean {\n return (\n filter.name === 'fruitType' &&\n filter.value !== 'any' &&\n filter.value !== item.type\n );\n }\n\n #itemIsShown(filters: Filter[], item: Fruit): boolean {\n let passesFilter = true,\n j: number;\n\n for (j = 0; j < filters.length; j++) {\n if (this.#orangeFilterFailed(filters[j], item)) {\n passesFilter = false;\n } else if (this.#fruitTypeFilterFailed(filters[j], item)) {\n passesFilter = false;\n }\n }\n\n return passesFilter;\n }\n\n #filterItems(items: Fruit[], filters: Filter[]): Fruit[] {\n let i: number, passesFilter: boolean;\n const result: Fruit[] = [];\n\n for (i = 0; i < items.length; i++) {\n passesFilter = this.#itemIsShown(filters, items[i]);\n if (passesFilter) {\n result.push(items[i]);\n }\n }\n\n return result;\n }\n\n #orangeFilterFailed(filter: Filter, item: Fruit): boolean {\n return (\n filter.name === 'hideOrange' && !!filter.value && item.color === 'orange'\n );\n }\n}\n","<sky-toolbar>\n <sky-toolbar-section>\n <sky-toolbar-item>\n <sky-filter-button\n [showButtonText]=\"true\"\n (filterButtonClick)=\"onModalFilterButtonClick()\"\n />\n </sky-toolbar-item>\n </sky-toolbar-section>\n @if (appliedFilters && appliedFilters.length > 0) {\n <sky-toolbar-section>\n <sky-filter-summary>\n @for (item of appliedFilters; track item; let i = $index) {\n <sky-filter-summary-item (dismiss)=\"onDismiss(i)\">\n {{ item.label }}\n </sky-filter-summary-item>\n }\n </sky-filter-summary>\n </sky-toolbar-section>\n }\n</sky-toolbar>\n<sky-repeater expandMode=\"none\">\n @for (item of filteredItems; track item) {\n <sky-repeater-item>\n <sky-repeater-item-title>\n {{ item.name }}\n </sky-repeater-item-title>\n </sky-repeater-item>\n }\n</sky-repeater>\n","import { Injectable } from '@angular/core';\n\nimport { Observable, delay, of } from 'rxjs';\n\nimport { DemoData } from './demo-data';\n\nconst people = [\n {\n name: 'Abed',\n formal: 'Mr. Nadir',\n },\n {\n name: 'Alex',\n formal: 'Mr. Osbourne',\n },\n {\n name: 'Ben',\n formal: 'Mr. Chang',\n },\n {\n name: 'Britta',\n formal: 'Ms. Perry',\n },\n {\n name: 'Buzz',\n formal: 'Mr. Hickey',\n },\n {\n name: 'Craig',\n formal: 'Mr. Pelton',\n },\n {\n name: 'Elroy',\n formal: 'Mr. Patashnik',\n },\n {\n name: 'Garrett',\n formal: 'Mr. Lambert',\n },\n {\n name: 'Ian',\n formal: 'Mr. Duncan',\n },\n {\n name: 'Jeff',\n formal: 'Mr. Winger',\n },\n {\n name: 'Leonard',\n formal: 'Mr. Rodriguez',\n },\n {\n name: 'Neil',\n formal: 'Mr. Neil',\n },\n {\n name: 'Pierce',\n formal: 'Mr. Hawthorne',\n },\n {\n name: 'Preston',\n formal: 'Mr. Koogler',\n },\n {\n name: 'Rachel',\n formal: 'Ms. Rachel',\n },\n {\n name: 'Shirley',\n formal: 'Ms. Bennett',\n },\n {\n name: 'Todd',\n formal: 'Mr. Jacobson',\n },\n {\n name: 'Troy',\n formal: 'Mr. Barnes',\n },\n {\n name: 'Vaughn',\n formal: 'Mr. Miller',\n },\n {\n name: 'Vicki',\n formal: 'Ms. Jenkins',\n },\n];\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DemoDataService {\n public getPagedData(\n pageNumber: number,\n itemCount: number,\n ): Observable<DemoData> {\n const startIndex = (pageNumber - 1) * itemCount;\n\n return of({\n people: people.slice(startIndex, startIndex + itemCount),\n totalCount: people.length,\n }).pipe(\n // Simulate network latency.\n delay(1000),\n );\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { SkyDescriptionListModule } from '@skyux/layout';\nimport {\n SkyPagingContentChangeArgs,\n SkyPagingModule,\n SkyRepeaterModule,\n} from '@skyux/lists';\n\nimport { Subject, shareReplay, switchMap, tap } from 'rxjs';\n\nimport { DemoDataService } from './demo-data.service';\n\n@Component({\n selector: 'app-lists-paging-with-content-example',\n templateUrl: './example.component.html',\n imports: [\n CommonModule,\n SkyDescriptionListModule,\n SkyPagingModule,\n SkyRepeaterModule,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ListsPagingWithContentExampleComponent {\n #demoDataSvc = inject(DemoDataService);\n\n protected currentPage = 1;\n protected pageSize = 5;\n protected contentChange = new Subject<SkyPagingContentChangeArgs>();\n\n protected pagedData = this.contentChange.pipe(\n switchMap((args) =>\n this.#demoDataSvc.getPagedData(args.currentPage, this.pageSize).pipe(\n tap(() => {\n args.loadingComplete();\n }),\n ),\n ),\n shareReplay(1),\n );\n}\n","<sky-paging\n [itemCount]=\"(pagedData | async)?.totalCount ?? 0\"\n [maxPages]=\"3\"\n [pageSize]=\"pageSize\"\n [(currentPage)]=\"currentPage\"\n (contentChange)=\"contentChange.next($event)\"\n>\n <sky-paging-content>\n <sky-repeater>\n @for (person of (pagedData | async)?.people; track person) {\n <sky-repeater-item>\n <sky-repeater-item-title>\n {{ person.name }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n <sky-description-list>\n <sky-description-list-content>\n <sky-description-list-term>\n Formal name\n </sky-description-list-term>\n <sky-description-list-description>\n {{ person.formal }}\n </sky-description-list-description>\n </sky-description-list-content>\n </sky-description-list>\n </sky-repeater-item-content>\n </sky-repeater-item>\n }\n </sky-repeater>\n </sky-paging-content>\n</sky-paging>\n","import { Component } from '@angular/core';\nimport { SkyPagingModule } from '@skyux/lists';\n\n@Component({\n selector: 'app-lists-paging-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyPagingModule],\n})\nexport class ListsPagingBasicExampleComponent {\n protected currentPage = 1;\n}\n","<sky-paging\n [itemCount]=\"8\"\n [maxPages]=\"3\"\n [pageSize]=\"2\"\n [(currentPage)]=\"currentPage\"\n/>\n\n<p>The current page is {{ currentPage }}.</p>\n","import { Component } from '@angular/core';\nimport { SkyRepeaterModule } from '@skyux/lists';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\nimport { Item } from './item';\n\nlet nextId = 0;\n\n@Component({\n selector: 'app-lists-repeater-add-remove-example',\n templateUrl: './example.component.html',\n styleUrls: ['./example.component.scss'],\n imports: [SkyDropdownModule, SkyRepeaterModule],\n})\nexport class ListsRepeaterAddRemoveExampleComponent {\n protected items: Item[] = [\n {\n title: 'Call Robert Hernandez',\n note: 'Robert recently gave a very generous gift. We should call him to thank him.',\n status: 'Completed',\n isSelected: false,\n },\n {\n title: 'Send invitation to Spring Ball',\n note: \"The Spring Ball is coming up soon. Let's get those invitations out!\",\n status: 'Past due',\n isSelected: false,\n },\n {\n title: 'Assign prospects',\n note: 'There are 14 new prospects who are not assigned to fundraisers.',\n status: 'Due tomorrow',\n isSelected: false,\n },\n {\n title: 'Process gift receipts',\n note: 'There are 28 recent gifts that are not receipted.',\n status: 'Due next week',\n isSelected: false,\n },\n ];\n\n protected addItem(): void {\n this.items.push({\n title: 'New reminder ' + ++nextId,\n note: 'This is a new reminder',\n status: 'Active',\n isSelected: false,\n });\n }\n\n protected changeItems(tags: Item[]): void {\n console.log('Tags in order ', tags);\n }\n\n protected onActionClicked(buttonText: string): void {\n alert(buttonText + ' was clicked!');\n }\n\n protected removeItems(): void {\n this.items = this.items.filter((item) => !item.isSelected);\n }\n}\n","<div class=\"sky-margin-stacked-lg\">\n <sky-repeater\n data-sky-id=\"repeater-example\"\n [expandMode]=\"'single'\"\n [reorderable]=\"true\"\n (orderChange)=\"changeItems($event)\"\n >\n @for (item of items; track item) {\n <sky-repeater-item\n [selectable]=\"true\"\n [tag]=\"item.note\"\n [(isSelected)]=\"item.isSelected\"\n >\n <sky-repeater-item-title class=\"example-repeater-flex\">\n <div class=\"example-repeater-item-title sky-font-emphasized\">\n {{ item.title }}\n </div>\n <div>\n {{ item.status }}\n </div>\n </sky-repeater-item-title>\n <sky-repeater-item-context-menu>\n <sky-dropdown buttonType=\"context-menu\">\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button type=\"button\" (click)=\"onActionClicked('Action 1')\">\n Action 1\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button type=\"button\" (click)=\"onActionClicked('Action 2')\">\n Action 2\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n </sky-repeater-item-context-menu>\n <sky-repeater-item-content>\n {{ item.note }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n }\n </sky-repeater>\n</div>\n\n<button\n data-sky-id=\"add-button\"\n class=\"sky-btn sky-btn-default sky-margin-inline-sm\"\n type=\"button\"\n (click)=\"addItem()\"\n>\n Add item\n</button>\n\n<button\n data-sky-id=\"remove-button\"\n class=\"sky-btn sky-btn-default sky-margin-inline-sm\"\n type=\"button\"\n (click)=\"removeItems()\"\n>\n Remove selected items\n</button>\n","import { Component, OnInit } from '@angular/core';\nimport { SkyInfiniteScrollModule, SkyRepeaterModule } from '@skyux/lists';\n\nimport { InfiniteScrollDemoItem } from './item';\n\nlet nextId = 0;\n\n@Component({\n selector: 'app-lists-infinite-scroll-repeater-example',\n templateUrl: './example.component.html',\n imports: [SkyInfiniteScrollModule, SkyRepeaterModule],\n})\nexport class ListsInfiniteScrollRepeaterExampleComponent implements OnInit {\n protected items: InfiniteScrollDemoItem[] = [];\n protected itemsHaveMore = true;\n\n public ngOnInit(): void {\n void this.#addData();\n }\n\n protected onScrollEnd(): void {\n if (this.itemsHaveMore) {\n void this.#addData();\n }\n }\n\n async #addData(): Promise<void> {\n const result = await this.#mockRemote();\n this.items = this.items.concat(result.data);\n this.itemsHaveMore = result.hasMore;\n }\n\n #mockRemote(): Promise<{\n data: InfiniteScrollDemoItem[];\n hasMore: boolean;\n }> {\n const data: InfiniteScrollDemoItem[] = [];\n\n for (let i = 0; i < 8; i++) {\n data.push({\n name: `Item #${++nextId}`,\n });\n }\n\n // Simulate async request.\n return new Promise((resolve) => {\n setTimeout(() => {\n resolve({\n data,\n hasMore: nextId < 50,\n });\n }, 1000);\n });\n }\n}\n","<div style=\"overflow-y: auto; max-height: 500px; position: relative\">\n <sky-repeater>\n @for (item of items; track item) {\n <sky-repeater-item>\n <sky-repeater-item-title>\n {{ item.name }}\n </sky-repeater-item-title>\n </sky-repeater-item>\n }\n </sky-repeater>\n <sky-infinite-scroll [enabled]=\"itemsHaveMore\" (scrollEnd)=\"onScrollEnd()\" />\n</div>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyIconModule } from '@skyux/icon';\nimport {\n SkyInlineFormButtonLayout,\n SkyInlineFormCloseArgs,\n SkyInlineFormConfig,\n} from '@skyux/inline-form';\nimport { SkyRepeaterModule } from '@skyux/lists';\n\ninterface DemoForm {\n id: FormControl<string>;\n note: FormControl<string>;\n title: FormControl<string>;\n}\n\ninterface Item {\n id: string;\n title: string | undefined;\n note: string | undefined;\n}\n\n@Component({\n selector: 'app-lists-repeater-inline-form-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyIconModule,\n SkyInputBoxModule,\n SkyRepeaterModule,\n ],\n})\nexport class ListsRepeaterInlineFormExampleComponent {\n protected activeInlineFormId: string | undefined;\n protected formGroup: FormGroup<DemoForm>;\n\n protected inlineFormConfig: SkyInlineFormConfig = {\n buttonLayout: SkyInlineFormButtonLayout.SaveCancel,\n };\n\n protected items: Item[] = [\n {\n id: '1',\n title: '2019 Spring Gala',\n note: 'Gala for friends and family',\n },\n {\n id: '2',\n title: '2019 Special Winter Event',\n note: 'A special event',\n },\n {\n id: '3',\n title: '2019 Donor Appreciation Event',\n note: 'Event for all donors and families',\n },\n {\n id: '4',\n title: '2020 Spring Gala',\n note: 'Gala for friends and family',\n },\n ];\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n id: new FormControl('', { nonNullable: true }),\n title: new FormControl('', { nonNullable: true }),\n note: new FormControl('', { nonNullable: true }),\n });\n }\n\n protected showInlineForm(item: Item): void {\n this.activeInlineFormId = item.id;\n this.formGroup.patchValue({\n note: item.note,\n title: item.title,\n });\n }\n\n protected onInlineFormClose(args: SkyInlineFormCloseArgs): void {\n if (args.reason === 'save') {\n const found = this.items.find(\n (item) => item.id === this.activeInlineFormId,\n );\n if (found) {\n found.note = this.formGroup.value.note;\n found.title = this.formGroup.value.title;\n }\n }\n\n this.formGroup.patchValue({\n note: undefined,\n title: undefined,\n });\n\n // Close the active form.\n this.activeInlineFormId = undefined;\n }\n}\n","<sky-repeater>\n @for (item of items; track item) {\n <sky-repeater-item\n [inlineFormConfig]=\"inlineFormConfig\"\n [inlineFormTemplate]=\"inlineFormTemplate\"\n [showInlineForm]=\"activeInlineFormId === item.id\"\n (inlineFormClose)=\"onInlineFormClose($event)\"\n >\n <sky-repeater-item-title>\n <div class=\"sky-font-emphasized\">\n {{ item.title }}\n </div>\n </sky-repeater-item-title>\n <sky-repeater-item-context-menu>\n <button\n aria-label=\"Edit\"\n class=\"sky-btn sky-btn-icon-borderless\"\n type=\"button\"\n (click)=\"showInlineForm(item)\"\n >\n <sky-icon icon=\"edit\" />\n </button>\n </sky-repeater-item-context-menu>\n\n <sky-repeater-item-content>\n {{ item.note }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n }\n</sky-repeater>\n\n<ng-template #inlineFormTemplate>\n <form novalidate [formGroup]=\"formGroup\">\n <sky-input-box labelText=\"Title\" stacked=\"true\">\n <input formControlName=\"title\" type=\"text\" />\n </sky-input-box>\n <sky-input-box labelText=\"Note\">\n <input formControlName=\"note\" type=\"text\" />\n </sky-input-box>\n </form>\n</ng-template>\n","import { Component } from '@angular/core';\nimport { SkyRepeaterModule } from '@skyux/lists';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\n@Component({\n selector: 'app-lists-repeater-basic-example',\n templateUrl: './example.component.html',\n styleUrls: ['./example.component.scss'],\n imports: [SkyDropdownModule, SkyRepeaterModule],\n})\nexport class ListsRepeaterBasicExampleComponent {\n protected items: {\n note: string;\n status?: string;\n title?: string;\n accessibilityLabel?: string;\n }[] = [\n {\n title: 'Call Robert Hernandez',\n note: 'Robert recently gave a very generous gift. We should call him to thank him.',\n status: 'Completed',\n },\n {\n title: 'Send invitation to Spring Ball',\n note: \"The Spring Ball is coming up soon. Let's get those invitations out!\",\n status: 'Past due',\n },\n {\n title: 'Assign prospects',\n note: 'There are 14 new prospects who are not assigned to fundraisers.',\n status: 'Due tomorrow',\n },\n {\n title: 'Process gift receipts',\n note: 'There are 28 recent gifts that are not receipted.',\n status: 'Due next week',\n },\n {\n note: 'Three other tasks were not displayed',\n accessibilityLabel: 'Other tasks',\n },\n ];\n\n protected onActionClicked(buttonText: string): void {\n alert(buttonText + ' was clicked!');\n }\n}\n","<sky-repeater data-sky-id=\"repeater-example\">\n @for (item of items; track item) {\n <sky-repeater-item [itemName]=\"item.accessibilityLabel\">\n @if (item.title) {\n <sky-repeater-item-title class=\"example-repeater-flex\">\n <div class=\"example-repeater-item-title sky-font-emphasized\">\n {{ item.title }}\n </div>\n <div>\n {{ item.status }}\n </div>\n </sky-repeater-item-title>\n }\n <sky-repeater-item-context-menu>\n <sky-dropdown buttonType=\"context-menu\">\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"\n 'Action 1 for ' + (item.title ?? item.accessibilityLabel)\n \"\n (click)=\"onActionClicked('Action 1')\"\n >\n Action 1\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"\n 'Action 2 for ' + (item.title ?? item.accessibilityLabel)\n \"\n (click)=\"onActionClicked('Action 2')\"\n >\n Action 2\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n </sky-repeater-item-context-menu>\n <sky-repeater-item-content>\n {{ item.note }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n }\n</sky-repeater>\n","import { CommonModule } from '@angular/common';\nimport { Component, OnInit } from '@angular/core';\nimport { SkyToolbarModule } from '@skyux/layout';\nimport { SkyRepeaterModule, SkySortModule } from '@skyux/lists';\n\ninterface Item {\n title: string;\n note: string;\n assignee: string;\n date: Date;\n}\ninterface SortOption {\n id: number;\n label: string;\n name: keyof Item;\n descending: boolean;\n}\n\n@Component({\n selector: 'app-lists-sort-basic-example',\n templateUrl: './example.component.html',\n imports: [CommonModule, SkyRepeaterModule, SkySortModule, SkyToolbarModule],\n})\nexport class ListsSortBasicExampleComponent implements OnInit {\n protected initialState = 3;\n\n protected sortedItems: Item[] = [\n {\n title: 'Call Robert Hernandez',\n note: 'Robert recently gave a very generous gift. We should call to thank him.',\n assignee: 'Debby Fowler',\n date: new Date('12/22/2015'),\n },\n {\n title: 'Send invitation to ball',\n note: \"The Spring Ball is coming up soon. Let's get those invitations out!\",\n assignee: 'Debby Fowler',\n date: new Date('1/1/2016'),\n },\n {\n title: 'Clean up desk',\n note: 'File and organize papers.',\n assignee: 'Tim Howard',\n date: new Date('2/2/2016'),\n },\n {\n title: 'Investigate leads',\n note: 'Check out leads for important charity event funding.',\n assignee: 'Larry Williams',\n date: new Date('4/5/2016'),\n },\n {\n title: 'Send thank you note',\n note: 'Send a thank you note to Timothy for his donation.',\n assignee: 'Catherine Hooper',\n date: new Date('11/11/2015'),\n },\n ];\n\n protected sortOptions: SortOption[] = [\n {\n id: 1,\n label: 'Assigned to (A - Z)',\n name: 'assignee',\n descending: false,\n },\n {\n id: 2,\n label: 'Assigned to (Z - A)',\n name: 'assignee',\n descending: true,\n },\n {\n id: 3,\n label: 'Date created (newest first)',\n name: 'date',\n descending: true,\n },\n {\n id: 4,\n label: 'Date created (oldest first)',\n name: 'date',\n descending: false,\n },\n {\n id: 5,\n label: 'Note title (A - Z)',\n name: 'title',\n descending: false,\n },\n {\n id: 6,\n label: 'Note title (Z - A)',\n name: 'title',\n descending: true,\n },\n ];\n\n public ngOnInit(): void {\n this.sortItems(this.sortOptions[2]);\n }\n\n protected sortItems(option: SortOption): void {\n this.sortedItems = this.sortedItems.sort((a, b) => {\n const descending = option.descending ? -1 : 1;\n const sortProperty: keyof typeof a = option.name;\n\n if (a[sortProperty] > b[sortProperty]) {\n return descending;\n } else if (a[sortProperty] < b[sortProperty]) {\n return -1 * descending;\n } else {\n return 0;\n }\n });\n }\n}\n","<sky-toolbar>\n <sky-toolbar-item>\n <sky-sort [showButtonText]=\"true\">\n @for (item of sortOptions; track item) {\n <sky-sort-item\n [active]=\"initialState === item.id\"\n (itemSelect)=\"sortItems(item)\"\n >\n {{ item.label }}\n </sky-sort-item>\n }\n </sky-sort>\n </sky-toolbar-item>\n</sky-toolbar>\n<sky-repeater expandMode=\"none\">\n @for (item of sortedItems; track item) {\n <sky-repeater-item>\n <sky-repeater-item-title>\n {{ item.title }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n <div style=\"display: flex; justify-content: space-between\">\n <div>Assigned to {{ item.assignee }}</div>\n <div>Created {{ item.date | date }}</div>\n </div>\n <div>\n {{ item.note }}\n </div>\n </sky-repeater-item-content>\n </sky-repeater-item>\n }\n</sky-repeater>\n","import { CommonModule } from '@angular/common';\nimport { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyIdModule } from '@skyux/core';\nimport { SkyAutocompleteModule } from '@skyux/lookup';\n\n@Component({\n selector: 'app-lookup-autocomplete-basic-example',\n templateUrl: './example.component.html',\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n SkyAutocompleteModule,\n SkyIdModule,\n ],\n})\nexport class LookupAutocompleteBasicExampleComponent {\n public colors: { name: string }[] = [\n { name: 'Red' },\n { name: 'Blue' },\n { name: 'Green' },\n { name: 'Orange' },\n { name: 'Pink' },\n { name: 'Purple' },\n { name: 'Yellow' },\n { name: 'Brown' },\n { name: 'Turquoise' },\n { name: 'White' },\n { name: 'Black' },\n ];\n\n public formGroup = inject(FormBuilder).group({\n favoriteColor: new FormControl<{ name: string } | undefined>(undefined),\n });\n}\n","<form novalidate [formGroup]=\"formGroup\">\n <div class=\"sky-margin-stacked-lg\">\n <label class=\"sky-control-label\" [for]=\"favoriteColorInput.id\">\n Favorite color\n </label>\n <sky-autocomplete data-sky-id=\"favorite-color\" [data]=\"colors\">\n <input\n #favoriteColorInput\n formControlName=\"favoriteColor\"\n type=\"text\"\n skyAutocomplete\n skyId\n />\n </sky-autocomplete>\n </div>\n <p class=\"sky-font-emphasized\">Form model:</p>\n <pre>{{ formGroup.value | json }}</pre>\n</form>\n","import { CommonModule } from '@angular/common';\nimport { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyIdModule } from '@skyux/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport {\n SkyAutocompleteModule,\n SkyAutocompleteSearchFunction,\n SkyAutocompleteSearchFunctionResponse,\n} from '@skyux/lookup';\n\nimport { Ocean } from './ocean';\n\n@Component({\n selector: 'app-lookup-autocomplete-custom-search-example',\n templateUrl: './example.component.html',\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n SkyAutocompleteModule,\n SkyIconModule,\n SkyIdModule,\n ],\n})\nexport class LookupAutocompleteCustomSearchExampleComponent {\n protected formGroup: FormGroup;\n protected largestOcean: FormControl;\n\n protected oceans: Ocean[] = [\n { title: 'Arctic', id: 1 },\n { title: 'Atlantic', id: 2 },\n { title: 'Indian', id: 3 },\n { title: 'Pacific', id: 4 },\n ];\n\n readonly #formBuilder = inject(FormBuilder);\n\n constructor() {\n this.largestOcean = this.#formBuilder.control({ title: 'Arctic', id: 1 });\n this.formGroup = this.#formBuilder.group({\n largestOcean: this.largestOcean,\n });\n }\n\n protected getOceanSearchFunction(): SkyAutocompleteSearchFunction {\n const searchFunction = (\n searchText: string,\n oceans: Ocean[],\n ): SkyAutocompleteSearchFunctionResponse => {\n return new Promise((resolve) => {\n const searchTextLower = searchText.toLowerCase();\n\n const results = oceans.filter((ocean: Ocean) => {\n const val = ocean.title;\n return !!val?.toString().toLowerCase().includes(searchTextLower);\n });\n\n // Simulate an async request.\n setTimeout(() => {\n resolve(results);\n }, 500);\n });\n };\n\n return searchFunction;\n }\n}\n","<form novalidate [formGroup]=\"formGroup\">\n <p>\n The following field has a preselected value and utilizes a custom search\n function, as well as a custom template for the search results.\n </p>\n <div class=\"sky-margin-stacked-lg\">\n <label class=\"sky-control-label\" [for]=\"largestOceanInput.id\">\n Largest ocean\n </label>\n <sky-autocomplete\n descriptorProperty=\"title\"\n [data]=\"oceans\"\n [search]=\"getOceanSearchFunction()\"\n [searchResultTemplate]=\"oceanSearchResultTemplate\"\n >\n <input\n #largestOceanInput=\"skyId\"\n formControlName=\"largestOcean\"\n type=\"text\"\n skyAutocomplete\n skyId\n />\n </sky-autocomplete>\n </div>\n <p class=\"sky-font-emphasized\">Form model:</p>\n <pre>{{ formGroup.value | json }}</pre>\n</form>\n\n<ng-template #oceanSearchResultTemplate let-item=\"item\">\n <sky-icon icon=\"long-arrow-right\" />\n {{ item.title }} &bull; ID {{ item.id }}\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyIdModule } from '@skyux/core';\nimport {\n SkyAutocompleteModule,\n SkyAutocompleteSearchFunctionFilter,\n SkyAutocompleteSelectionChange,\n} from '@skyux/lookup';\n\nimport { Planet } from './planet';\n\n@Component({\n selector: 'app-lookup-autocomplete-advanced-example',\n templateUrl: './example.component.html',\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n SkyAutocompleteModule,\n SkyIdModule,\n ],\n})\nexport class LookupAutocompleteAdvancedExampleComponent {\n protected farthestPlanet: FormControl;\n protected formGroup: FormGroup;\n\n protected planets: Planet[] = [\n {\n name: 'Mercury',\n description: 'Mercury is a planet in our solar system.',\n },\n { name: 'Venus', description: 'Venus is a planet in our solar system.' },\n { name: 'Earth', description: 'Earth is a planet in our solar system.' },\n { name: 'Mars', description: 'Mars is a planet in our solar system.' },\n {\n name: 'Jupiter',\n description: 'Jupiter is a planet in our solar system.',\n },\n { name: 'Saturn', description: 'Saturn is a planet in our solar system.' },\n { name: 'Uranus', description: 'Uranus is a planet in our solar system.' },\n {\n name: 'Neptune',\n description: 'Neptune is a planet in our solar system.',\n },\n ];\n\n protected searchFilters: SkyAutocompleteSearchFunctionFilter[] = [\n (searchText: string, item: Planet): boolean => {\n return item.name !== 'Red';\n },\n ];\n\n readonly #formBuilder = inject(FormBuilder);\n\n constructor() {\n this.farthestPlanet = this.#formBuilder.control({});\n this.formGroup = this.#formBuilder.group({\n farthestPlanet: this.farthestPlanet,\n });\n }\n\n protected onPlanetSelection(args: SkyAutocompleteSelectionChange): void {\n alert(`You selected ${(args.selectedItem as Planet).name}`);\n }\n}\n","<form novalidate [formGroup]=\"formGroup\">\n <div class=\"sky-margin-stacked-lg\">\n The following field:<br />\n <ul>\n <li>utilizes a custom search result template,</li>\n <li>searches against the name and description properties,</li>\n <li>limits the search results to two,</li>\n <li>runs the search if the query is at least three characters long,</li>\n <li>and fires an event when a selection is made.</li>\n </ul>\n </div>\n\n <div class=\"sky-margin-stacked-lg\">\n <label class=\"sky-control-label\" [for]=\"planetInput.id\">\n Farthest planet from the sun\n </label>\n <sky-autocomplete\n [data]=\"planets\"\n [propertiesToSearch]=\"['name', 'description']\"\n [searchResultsLimit]=\"2\"\n [searchResultTemplate]=\"planetSearchResultTemplate\"\n [searchTextMinimumCharacters]=\"3\"\n (selectionChange)=\"onPlanetSelection($event)\"\n >\n <input\n #planetInput\n formControlName=\"farthestPlanet\"\n skyAutocomplete\n skyId\n type=\"text\"\n />\n </sky-autocomplete>\n </div>\n <p class=\"sky-font-emphasized\">Form model:</p>\n <pre>{{ formGroup.value | json }}</pre>\n</form>\n\n<ng-template #planetSearchResultTemplate let-item=\"item\">\n <strong>\n {{ item.name }}\n </strong>\n <br />\n {{ item.description }}\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyIdModule } from '@skyux/core';\nimport {\n SkyAutocompleteModule,\n SkyAutocompleteSearchFunctionFilter,\n} from '@skyux/lookup';\n\n@Component({\n selector: 'app-lookup-autocomplete-search-filters-example',\n templateUrl: './example.component.html',\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n SkyAutocompleteModule,\n SkyIdModule,\n ],\n})\nexport class LookupAutocompleteSearchFiltersExampleComponent {\n protected colors: { name: string }[] = [\n { name: 'Red' },\n { name: 'Blue' },\n { name: 'Green' },\n { name: 'Orange' },\n { name: 'Pink' },\n { name: 'Purple' },\n { name: 'Yellow' },\n { name: 'Brown' },\n { name: 'Turquoise' },\n { name: 'White' },\n { name: 'Black' },\n ];\n\n protected formGroup: FormGroup;\n\n protected searchFilters: SkyAutocompleteSearchFunctionFilter[] = [\n (searchText: string, item: { name: string }): boolean => {\n return item.name !== 'Red';\n },\n ];\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n favoriteColor: undefined,\n });\n }\n}\n","<form novalidate [formGroup]=\"formGroup\">\n <p>\n The following field provides a custom function that filters the data before\n every search attempt.\n </p>\n <div class=\"sky-margin-stacked-lg\">\n <label class=\"sky-control-label\" [for]=\"favoriteColorInput.id\">\n Color (\"Red\" is not available)\n </label>\n <sky-autocomplete [data]=\"colors\" [searchFilters]=\"searchFilters\">\n <input\n #favoriteColorInput=\"skyId\"\n formControlName=\"favoriteColor\"\n skyAutocomplete\n skyId\n type=\"text\"\n />\n </sky-autocomplete>\n </div>\n <p class=\"sky-font-emphasized\">Form model:</p>\n <pre>{{ formGroup.value | json }}</pre>\n</form>\n","import { Component, inject } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n ValidationErrors,\n Validators,\n} from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyCountryFieldCountry, SkyCountryFieldModule } from '@skyux/lookup';\n\ninterface DemoForm {\n country: FormControl<SkyCountryFieldCountry | undefined>;\n}\n\nfunction validateCountry(\n control: AbstractControl<SkyCountryFieldCountry | undefined>,\n): ValidationErrors | null {\n return control.value?.name === 'Mexico' ? { invalidCountry: true } : null;\n}\n\n@Component({\n selector: 'app-lookup-country-field-basic-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyCountryFieldModule,\n SkyInputBoxModule,\n ],\n})\nexport class LookupCountryFieldBasicExampleComponent {\n protected countryControl: FormControl<SkyCountryFieldCountry | undefined>;\n public countryForm: FormGroup<DemoForm>;\n\n protected helpPopoverContent =\n 'We use the country to validate your passport within 10 business days. You can update it at any time.';\n\n #formBuilder = inject(FormBuilder);\n\n constructor() {\n this.countryControl = new FormControl(\n {\n name: 'Australia',\n iso2: 'au',\n },\n {\n nonNullable: true,\n validators: [validateCountry, Validators.required],\n },\n );\n\n this.countryForm = this.#formBuilder.group({\n country: this.countryControl,\n });\n }\n}\n","<form [formGroup]=\"countryForm\">\n <sky-input-box\n data-sky-id=\"country-field\"\n hintText=\"If you have multiple countries, choose your primary country.\"\n labelText=\"Country\"\n [helpPopoverContent]=\"helpPopoverContent\"\n >\n <sky-country-field formControlName=\"country\" />\n @if (countryControl.errors?.['invalidCountry']) {\n <sky-form-error\n errorName=\"invalidCountry\"\n errorText=\"This country is no longer available for the date you selected.\"\n />\n }\n </sky-input-box>\n</form>\n","import { Injectable } from '@angular/core';\n\nimport { Observable, of } from 'rxjs';\nimport { delay } from 'rxjs/operators';\n\nimport { Person } from './person';\nimport { LookupAsyncDemoSearchResults } from './search-results';\n\nconst people: Person[] = [\n {\n name: 'Abed',\n formal: 'Mr. Nadir',\n },\n {\n name: 'Alex',\n formal: 'Mr. Osbourne',\n },\n {\n name: 'Ben',\n formal: 'Mr. Chang',\n },\n {\n name: 'Britta',\n formal: 'Ms. Perry',\n },\n {\n name: 'Buzz',\n formal: 'Mr. Hickey',\n },\n {\n name: 'Craig',\n formal: 'Mr. Pelton',\n },\n {\n name: 'Elroy',\n formal: 'Mr. Patashnik',\n },\n {\n name: 'Garrett',\n formal: 'Mr. Lambert',\n },\n {\n name: 'Ian',\n formal: 'Mr. Duncan',\n },\n {\n name: 'Jeff',\n formal: 'Mr. Winger',\n },\n {\n name: 'Leonard',\n formal: 'Mr. Rodriguez',\n },\n {\n name: 'Neil',\n formal: 'Mr. Neil',\n },\n {\n name: 'Pierce',\n formal: 'Mr. Hawthorne',\n },\n {\n name: 'Preston',\n formal: 'Mr. Koogler',\n },\n {\n name: 'Rachel',\n formal: 'Ms. Rachel',\n },\n {\n name: 'Shirley',\n formal: 'Ms. Bennett',\n },\n {\n name: 'Todd',\n formal: 'Mr. Jacobson',\n },\n {\n name: 'Troy',\n formal: 'Mr. Barnes',\n },\n {\n name: 'Vaughn',\n formal: 'Mr. Miller',\n },\n {\n name: 'Vicki',\n formal: 'Ms. Jenkins',\n },\n];\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DemoService {\n public search(searchText: string): Observable<LookupAsyncDemoSearchResults> {\n // Simulate a network call with latency. A real-world application might\n // use Angular's HttpClient to create an Observable from a call to a\n // web service.\n searchText = searchText.toUpperCase();\n\n const matchingPeople = people.filter((person) =>\n person.name.toUpperCase().includes(searchText),\n );\n\n return of({\n hasMore: false,\n people: matchingPeople,\n totalCount: matchingPeople.length,\n }).pipe(delay(800));\n }\n\n public addPerson(person: Person): Observable<number> {\n // Simulate adding a person with a network call.\n if (!people.some((item) => item.name === person.name)) {\n people.unshift(person);\n }\n\n return of(1).pipe(delay(800));\n }\n}\n","import { ChangeDetectorRef, Component, inject } from '@angular/core';\nimport {\n FormArray,\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyCheckboxModule, SkySelectionBoxModule } from '@skyux/forms';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyWaitModule } from '@skyux/indicators';\nimport { SkyLookupShowMoreCustomPickerContext } from '@skyux/lookup';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\n\nimport { take } from 'rxjs/operators';\n\nimport { DemoService } from './example.service';\nimport { Person } from './person';\n\n@Component({\n selector: 'app-picker-modal',\n templateUrl: './picker-modal.component.html',\n styleUrls: ['./picker-modal.component.scss'],\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyCheckboxModule,\n SkyIconModule,\n SkyModalModule,\n SkySelectionBoxModule,\n SkyWaitModule,\n ],\n})\nexport class PickerModalComponent {\n protected peopleForm?: FormGroup<{\n people: FormArray<FormControl<boolean>>;\n }>;\n\n protected people: Person[] = [];\n\n protected readonly context = inject(SkyLookupShowMoreCustomPickerContext);\n readonly #changeDetector = inject(ChangeDetectorRef);\n readonly #formBuilder = inject(FormBuilder);\n readonly #modalInstance = inject(SkyModalInstance);\n readonly #svc = inject(DemoService);\n\n constructor() {\n // This list of people will be rendered as selection boxes.\n this.#svc\n .search('')\n .pipe(take(1))\n .subscribe((results) => {\n this.people = results.people;\n\n // Create a control for each selection box.\n this.peopleForm = this.#formBuilder.group({\n people: this.#formBuilder.array(\n this.people.map((item: Person) =>\n this.#formBuilder.control(\n (this.context.initialValue as Person[]).findIndex(\n (initialItem) => initialItem.name === item.name,\n ) >= 0,\n { nonNullable: true },\n ),\n ),\n ),\n });\n this.#changeDetector.markForCheck();\n });\n }\n\n protected save(): void {\n // Return a list of selected people to the lookup component.\n const selectedPeople = this.people.filter(\n (_, index) => this.peopleForm?.value.people?.[index],\n );\n\n this.#modalInstance.save(selectedPeople);\n }\n}\n","<sky-modal class=\"lookup-custom-picker-modal\" headingText=\"Names\">\n <sky-modal-content>\n @if (peopleForm) {\n <form [formGroup]=\"peopleForm\">\n <sky-selection-box-grid>\n @for (\n personControl of peopleForm.controls.people.controls;\n track personControl;\n let i = $index\n ) {\n <sky-selection-box [control]=\"checkbox\">\n <sky-icon icon=\"user\" />\n <sky-selection-box-header>\n {{ people[i].name }}\n </sky-selection-box-header>\n <sky-selection-box-description>\n {{ people[i].formal }}\n </sky-selection-box-description>\n <sky-checkbox #checkbox [formControl]=\"personControl\" />\n </sky-selection-box>\n }\n </sky-selection-box-grid>\n </form>\n } @else {\n <div class=\"wait-container\">\n <sky-wait [isWaiting]=\"true\" />\n </div>\n }\n </sky-modal-content>\n <sky-modal-footer>\n <button\n class=\"sky-btn sky-btn-primary lookup-custom-picker-save-button\"\n type=\"button\"\n (click)=\"save()\"\n >\n Save\n </button>\n </sky-modal-footer>\n</sky-modal>\n","import { CommonModule } from '@angular/common';\nimport { Component, OnInit, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyWaitService } from '@skyux/indicators';\nimport {\n SkyAutocompleteSearchAsyncArgs,\n SkyLookupAddClickEventArgs,\n SkyLookupModule,\n SkyLookupShowMoreConfig,\n SkyLookupShowMoreCustomPickerContext,\n} from '@skyux/lookup';\nimport { SkyModalService } from '@skyux/modals';\n\nimport { map } from 'rxjs/operators';\n\nimport { DemoService } from './example.service';\nimport { Person } from './person';\nimport { PickerModalComponent } from './picker-modal.component';\n\n@Component({\n selector: 'app-lookup-custom-picker-example',\n templateUrl: './example.component.html',\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n SkyInputBoxModule,\n SkyLookupModule,\n ],\n})\nexport class LookupCustomPickerExampleComponent implements OnInit {\n public favoritesForm: FormGroup<{\n favoriteNames: FormControl<Person[] | null>;\n }>;\n\n protected showMoreConfig: SkyLookupShowMoreConfig;\n\n readonly #modalSvc = inject(SkyModalService);\n readonly #svc = inject(DemoService);\n readonly #waitSvc = inject(SkyWaitService);\n\n constructor() {\n const names = new FormControl<Person[]>([\n {\n name: 'Shirley',\n formal: 'Ms. Bennett',\n },\n ]);\n\n this.favoritesForm = inject(FormBuilder).group({\n favoriteNames: names,\n });\n\n this.showMoreConfig = {\n customPicker: {\n open: (context): void => {\n const instance = this.#modalSvc.open(PickerModalComponent, {\n providers: [\n {\n provide: SkyLookupShowMoreCustomPickerContext,\n useValue: context,\n },\n ],\n size: 'large',\n });\n\n instance.closed.subscribe((closeArgs) => {\n if (closeArgs.reason === 'save') {\n this.favoritesForm.controls.favoriteNames.setValue(\n closeArgs.data as Person[],\n );\n }\n });\n },\n },\n };\n }\n\n public ngOnInit(): void {\n // If you need to execute some logic after the lookup values change,\n // subscribe to Angular's built-in value changes observable.\n this.favoritesForm.valueChanges.subscribe((changes) => {\n console.log('Lookup value changes:', changes);\n });\n }\n\n protected searchAsync(args: SkyAutocompleteSearchAsyncArgs): void {\n // In a real-world application the search service might return an Observable\n // created by calling HttpClient.get(). Assigning that Observable to the result\n // allows the lookup component to cancel the web request if it does not complete\n // before the user searches again.\n args.result = this.#svc.search(args.searchText).pipe(\n map((result) => ({\n hasMore: result.hasMore,\n items: result.people,\n totalCount: result.totalCount,\n })),\n );\n }\n\n protected addClick(args: SkyLookupAddClickEventArgs): void {\n const person: Person = {\n name: 'Newman',\n formal: 'Mr. Parker',\n };\n\n this.#waitSvc.blockingWrap(this.#svc.addPerson(person)).subscribe(() => {\n args.itemAdded({\n item: person,\n });\n });\n }\n\n protected onSubmit(): void {\n alert('Form submitted with: ' + JSON.stringify(this.favoritesForm.value));\n }\n}\n","<form\n class=\"sky-padding-even-md\"\n novalidate\n [formGroup]=\"favoritesForm\"\n (ngSubmit)=\"onSubmit()\"\n>\n <sky-input-box\n data-sky-id=\"favorite-names-field\"\n helpPopoverContent=\"A name can be selected from the list or added as a new name.\"\n hintText=\"Choose a name from the list or add a new name.\"\n labelText=\"Favorite names\"\n stacked\n >\n <sky-lookup\n formControlName=\"favoriteNames\"\n [enableShowMore]=\"true\"\n [showAddButton]=\"true\"\n [showMoreConfig]=\"showMoreConfig\"\n (searchAsync)=\"searchAsync($event)\"\n (addClick)=\"addClick($event)\"\n />\n </sky-input-box>\n <div\n class=\"sky-border-dark sky-rounded-corners sky-padding-even-md sky-margin-stacked-lg\"\n >\n <strong>Form model:</strong>\n <pre>{{ favoritesForm.value | json }}</pre>\n </div>\n <button class=\"sky-btn sky-btn-default\" type=\"submit\">Submit</button>\n</form>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\n\nlet nextId = 21;\n\n@Component({\n selector: 'app-add-item-modal',\n templateUrl: './add-item-modal.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyInputBoxModule,\n SkyModalModule,\n ],\n})\nexport class AddItemModalComponent {\n protected readonly formGroup: FormGroup;\n\n readonly #modal = inject(SkyModalInstance);\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n id: [`${nextId++}`],\n name: ['', Validators.required],\n });\n }\n\n protected close(): void {\n this.#modal.close();\n }\n\n protected save(): void {\n if (this.formGroup.valid) {\n this.#modal.close(this.formGroup.value, 'save');\n } else {\n this.formGroup.markAllAsTouched();\n }\n }\n}\n","<form novalidate [formGroup]=\"formGroup\" (ngSubmit)=\"save()\">\n <sky-modal headingText=\"Add Item\">\n <sky-modal-content>\n <sky-input-box\n labelText=\"Name\"\n hintText=\"Find an individual by first name\"\n >\n <input\n type=\"text\"\n autocapitalize=\"words\"\n autocomplete=\"off\"\n formControlName=\"name\"\n />\n </sky-input-box>\n </sky-modal-content>\n <sky-modal-footer>\n <button class=\"sky-btn sky-btn-default\" type=\"button\" (click)=\"close()\">\n Cancel\n </button>\n <button class=\"sky-btn sky-btn-primary\" type=\"submit\">Add</button>\n </sky-modal-footer>\n </sky-modal>\n</form>\n","import { Injectable } from '@angular/core';\n\nimport { Observable, of } from 'rxjs';\nimport { delay } from 'rxjs/operators';\n\nimport { Person } from './person';\nimport { SearchResults } from './search-results';\n\nconst people: Person[] = [\n { id: '1', name: 'Abed' },\n { id: '2', name: 'Alex' },\n { id: '3', name: 'Ben' },\n { id: '4', name: 'Britta' },\n { id: '5', name: 'Buzz' },\n { id: '6', name: 'Craig' },\n { id: '7', name: 'Elroy' },\n { id: '8', name: 'Garrett' },\n { id: '9', name: 'Ian' },\n { id: '10', name: 'Jeff' },\n { id: '11', name: 'Leonard' },\n { id: '12', name: 'Neil' },\n { id: '13', name: 'Pierce' },\n { id: '14', name: 'Preston' },\n { id: '15', name: 'Rachel' },\n { id: '16', name: 'Shirley' },\n { id: '17', name: 'Todd' },\n { id: '18', name: 'Troy' },\n { id: '19', name: 'Vaughn' },\n { id: '20', name: 'Vicki' },\n];\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DemoService {\n public search(searchText: string): Observable<SearchResults> {\n // Simulate a network call with latency. A real-world application might\n // use Angular's HttpClient to create an Observable from a call to a\n // web service.\n searchText = searchText.toUpperCase();\n\n const matchingPeople = people.filter((person) =>\n person.name.toUpperCase().includes(searchText),\n );\n\n return of({\n hasMore: false,\n people: matchingPeople,\n totalCount: matchingPeople.length,\n }).pipe(delay(800));\n }\n\n public addPerson(person: Person): Observable<Person[]> {\n // Simulate adding a person with a network call.\n if (!people.some((item) => item.name === person.name)) {\n people.unshift(person);\n }\n\n return of(people.slice()).pipe(delay(800));\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { Component, OnDestroy, OnInit, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyIdModule } from '@skyux/core';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyWaitService } from '@skyux/indicators';\nimport {\n SkyAutocompleteSearchAsyncArgs,\n SkyLookupAddClickEventArgs,\n SkyLookupModule,\n SkyLookupShowMoreConfig,\n} from '@skyux/lookup';\nimport { SkyModalService } from '@skyux/modals';\n\nimport { Subscription } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\nimport { AddItemModalComponent } from './add-item-modal.component';\nimport { DemoService } from './example.service';\nimport { Person } from './person';\n\n@Component({\n selector: 'app-lookup-add-item-example',\n templateUrl: './example.component.html',\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n SkyIdModule,\n SkyInputBoxModule,\n SkyLookupModule,\n ],\n})\nexport class LookupAddItemExampleComponent implements OnInit, OnDestroy {\n public favoritesForm: FormGroup<{\n favoriteNames: FormControl<Person[] | null>;\n }>;\n\n public showMoreConfig: SkyLookupShowMoreConfig = {\n nativePickerConfig: {\n selectionDescriptor: 'names',\n },\n };\n\n #subscriptions = new Subscription();\n\n readonly #svc = inject(DemoService);\n readonly #modalSvc = inject(SkyModalService);\n readonly #waitSvc = inject(SkyWaitService);\n\n constructor() {\n const names = new FormControl<Person[]>([{ id: '16', name: 'Shirley' }]);\n\n this.favoritesForm = inject(FormBuilder).group({\n favoriteNames: names,\n });\n }\n\n public ngOnInit(): void {\n // If you need to execute some logic after the lookup values change,\n // subscribe to Angular's built-in value changes observable.\n this.favoritesForm.valueChanges.subscribe((changes) => {\n console.log('Lookup value changes:', changes);\n });\n }\n\n public ngOnDestroy(): void {\n this.#subscriptions.unsubscribe();\n }\n\n public onSubmit(): void {\n alert('Form submitted with: ' + JSON.stringify(this.favoritesForm.value));\n }\n\n public searchAsync(args: SkyAutocompleteSearchAsyncArgs): void {\n // In a real-world application the search service might return an Observable\n // created by calling HttpClient.get(). Assigning that Observable to the result\n // allows the lookup component to cancel the web request if it does not complete\n // before the user searches again.\n args.result = this.#svc.search(args.searchText).pipe(\n map((result) => ({\n hasMore: result.hasMore,\n items: result.people,\n totalCount: result.totalCount,\n })),\n );\n }\n\n public addClick(args: SkyLookupAddClickEventArgs): void {\n const modal = this.#modalSvc.open(AddItemModalComponent);\n\n this.#subscriptions.add(\n modal.closed.subscribe((close) => {\n if (close.reason === 'save') {\n const person = close.data as Person;\n\n this.#subscriptions.add(\n this.#waitSvc\n .blockingWrap(this.#svc.addPerson(person))\n .subscribe((data) => {\n args.itemAdded({\n item: person,\n data,\n });\n }),\n );\n }\n }),\n );\n }\n}\n","<form\n class=\"sky-padding-even-md\"\n novalidate\n [formGroup]=\"favoritesForm\"\n (ngSubmit)=\"onSubmit()\"\n>\n <sky-input-box\n data-sky-id=\"favorite-names-field\"\n helpPopoverContent=\"A name can be selected from the list or added as a new name.\"\n hintText=\"Choose a name from the list or add a new name.\"\n labelText=\"Favorite name(s)\"\n stacked\n >\n <sky-lookup\n formControlName=\"favoriteNames\"\n idProperty=\"name\"\n [enableShowMore]=\"true\"\n [showAddButton]=\"true\"\n [showMoreConfig]=\"showMoreConfig\"\n (addClick)=\"addClick($event)\"\n (searchAsync)=\"searchAsync($event)\"\n />\n </sky-input-box>\n <div\n class=\"sky-border-dark sky-rounded-corners sky-padding-even-md sky-margin-stacked-lg\"\n >\n <strong>Form model:</strong>\n <pre>{{ favoritesForm.value | json }}</pre>\n </div>\n <button class=\"sky-btn sky-btn-default\" type=\"submit\">Submit</button>\n</form>\n","import { Injectable } from '@angular/core';\n\nimport { Observable, of } from 'rxjs';\nimport { delay } from 'rxjs/operators';\n\nimport { Person } from './person';\nimport { LookupAsyncDemoSearchResults } from './search-results';\n\nconst people: Person[] = [\n { name: 'Abed' },\n { name: 'Alex' },\n { name: 'Ben' },\n { name: 'Britta' },\n { name: 'Buzz' },\n { name: 'Craig' },\n { name: 'Elroy' },\n { name: 'Garrett' },\n { name: 'Ian' },\n { name: 'Jeff' },\n { name: 'Leonard' },\n { name: 'Neil' },\n { name: 'Pierce' },\n { name: 'Preston' },\n { name: 'Rachel' },\n { name: 'Shirley' },\n { name: 'Todd' },\n { name: 'Troy' },\n { name: 'Vaughn' },\n { name: 'Vicki' },\n];\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DemoService {\n public search(searchText: string): Observable<LookupAsyncDemoSearchResults> {\n // Simulate a network call with latency. A real-world application might\n // use Angular's HttpClient to create an Observable from a call to a\n // web service.\n searchText = searchText.toUpperCase();\n\n const matchingPeople = people.filter((person) =>\n person.name.toUpperCase().includes(searchText),\n );\n\n return of({\n hasMore: false,\n people: matchingPeople,\n totalCount: matchingPeople.length,\n }).pipe(delay(800));\n }\n\n public addPerson(person: Person): Observable<number> {\n // Simulate adding a person with a network call.\n if (!people.some((item) => item.name === person.name)) {\n people.unshift(person);\n }\n\n return of(1).pipe(delay(800));\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { Component, OnInit, inject } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n ValidationErrors,\n} from '@angular/forms';\nimport { SkyFormErrorModule, SkyInputBoxModule } from '@skyux/forms';\nimport { SkyWaitService } from '@skyux/indicators';\nimport {\n SkyAutocompleteSearchAsyncArgs,\n SkyLookupAddClickEventArgs,\n SkyLookupModule,\n SkyLookupShowMoreConfig,\n} from '@skyux/lookup';\n\nimport { map } from 'rxjs/operators';\n\nimport { DemoService } from './example.service';\nimport { Person } from './person';\n\n@Component({\n selector: 'app-lookup-multi-select-example',\n templateUrl: './example.component.html',\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n SkyFormErrorModule,\n SkyInputBoxModule,\n SkyLookupModule,\n ],\n})\nexport class LookupMultiSelectExampleComponent implements OnInit {\n public favoritesForm: FormGroup<{\n favoriteNames: FormControl<Person[] | null>;\n }>;\n\n public showMoreConfig: SkyLookupShowMoreConfig = {\n nativePickerConfig: {\n selectionDescriptor: 'names',\n },\n };\n\n readonly #svc = inject(DemoService);\n readonly #waitSvc = inject(SkyWaitService);\n\n constructor() {\n const names = new FormControl<Person[]>([{ name: 'Shirley' }], {\n validators: [\n (control: AbstractControl<Person[] | null>): ValidationErrors => {\n if (\n control.value?.some((person: Person) => !person.name.match(/e/i))\n ) {\n return { letterE: true };\n }\n\n return {};\n },\n ],\n });\n\n this.favoritesForm = inject(FormBuilder).group({\n favoriteNames: names,\n });\n }\n\n public ngOnInit(): void {\n // If you need to execute some logic after the lookup values change,\n // subscribe to Angular's built-in value changes observable.\n this.favoritesForm.valueChanges.subscribe((changes) => {\n console.log('Lookup value changes:', changes);\n });\n }\n\n protected onSubmit(): void {\n alert('Form submitted with: ' + JSON.stringify(this.favoritesForm.value));\n }\n\n protected searchAsync(args: SkyAutocompleteSearchAsyncArgs): void {\n // In a real-world application the search service might return an Observable\n // created by calling HttpClient.get(). Assigning that Observable to the result\n // allows the lookup component to cancel the web request if it does not complete\n // before the user searches again.\n args.result = this.#svc.search(args.searchText).pipe(\n map((result) => ({\n hasMore: result.hasMore,\n items: result.people,\n totalCount: result.totalCount,\n })),\n );\n }\n\n protected addClick(args: SkyLookupAddClickEventArgs): void {\n const person: Person = {\n name: 'Newman',\n };\n\n this.#waitSvc.blockingWrap(this.#svc.addPerson(person)).subscribe(() => {\n args.itemAdded({\n item: person,\n });\n });\n }\n}\n","<form\n class=\"sky-padding-even-md\"\n novalidate\n [formGroup]=\"favoritesForm\"\n (ngSubmit)=\"onSubmit()\"\n>\n <sky-input-box\n data-sky-id=\"favorite-names-field\"\n helpPopoverContent=\"A name can be selected from the list or added as a new name.\"\n hintText=\"Choose a name from the list or add a new name.\"\n labelText=\"Favorite name(s)\"\n stacked\n >\n <sky-lookup\n formControlName=\"favoriteNames\"\n idProperty=\"name\"\n [enableShowMore]=\"true\"\n [showAddButton]=\"true\"\n [showMoreConfig]=\"showMoreConfig\"\n (searchAsync)=\"searchAsync($event)\"\n (addClick)=\"addClick($event)\"\n />\n @if (favoritesForm.controls.favoriteNames.errors?.['letterE']) {\n <sky-form-error\n errorName=\"letterE\"\n errorText=\"Please only choose names that contain the letter E\"\n />\n }\n </sky-input-box>\n <div\n class=\"sky-border-dark sky-rounded-corners sky-padding-even-md sky-margin-stacked-lg\"\n >\n <strong>Form model:</strong>\n <pre>{{ favoritesForm.value | json }}</pre>\n </div>\n <button class=\"sky-btn sky-btn-default\" type=\"submit\">Submit</button>\n</form>\n","import { Injectable } from '@angular/core';\n\nimport { Observable, of } from 'rxjs';\nimport { delay } from 'rxjs/operators';\n\nimport { Person } from './person';\nimport { LookupAsyncDemoSearchResults } from './search-results';\n\nconst people: Person[] = [\n {\n name: 'Abed',\n formal: 'Mr. Nadir',\n },\n {\n name: 'Alex',\n formal: 'Mr. Osbourne',\n },\n {\n name: 'Ben',\n formal: 'Mr. Chang',\n },\n {\n name: 'Britta',\n formal: 'Ms. Perry',\n },\n {\n name: 'Buzz',\n formal: 'Mr. Hickey',\n },\n {\n name: 'Craig',\n formal: 'Mr. Pelton',\n },\n {\n name: 'Elroy',\n formal: 'Mr. Patashnik',\n },\n {\n name: 'Garrett',\n formal: 'Mr. Lambert',\n },\n {\n name: 'Ian',\n formal: 'Mr. Duncan',\n },\n {\n name: 'Jeff',\n formal: 'Mr. Winger',\n },\n {\n name: 'Leonard',\n formal: 'Mr. Rodriguez',\n },\n {\n name: 'Neil',\n formal: 'Mr. Neil',\n },\n {\n name: 'Pierce',\n formal: 'Mr. Hawthorne',\n },\n {\n name: 'Preston',\n formal: 'Mr. Koogler',\n },\n {\n name: 'Rachel',\n formal: 'Ms. Rachel',\n },\n {\n name: 'Shirley',\n formal: 'Ms. Bennett',\n },\n {\n name: 'Todd',\n formal: 'Mr. Jacobson',\n },\n {\n name: 'Troy',\n formal: 'Mr. Barnes',\n },\n {\n name: 'Vaughn',\n formal: 'Mr. Miller',\n },\n {\n name: 'Vicki',\n formal: 'Ms. Jenkins',\n },\n];\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DemoService {\n public search(searchText: string): Observable<LookupAsyncDemoSearchResults> {\n // Simulate a network call with latency. A real-world application might\n // use Angular's HttpClient to create an Observable from a call to a\n // web service.\n searchText = searchText.toUpperCase();\n\n const matchingPeople = people.filter((person) =>\n person.name.toUpperCase().includes(searchText),\n );\n\n return of({\n hasMore: false,\n people: matchingPeople,\n totalCount: matchingPeople.length,\n }).pipe(delay(800));\n }\n\n public addPerson(person: Person): Observable<number> {\n // Simulate adding a person with a network call.\n if (!people.some((item) => item.name === person.name)) {\n people.unshift(person);\n }\n\n return of(1).pipe(delay(800));\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n Component,\n OnInit,\n TemplateRef,\n ViewChild,\n inject,\n} from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyWaitService } from '@skyux/indicators';\nimport {\n SkyAutocompleteSearchAsyncArgs,\n SkyLookupAddClickEventArgs,\n SkyLookupModule,\n SkyLookupShowMoreConfig,\n} from '@skyux/lookup';\n\nimport { map } from 'rxjs/operators';\n\nimport { DemoService } from './example.service';\nimport { Person } from './person';\n\n@Component({\n selector: 'app-lookup-result-templates-example',\n templateUrl: './example.component.html',\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n SkyInputBoxModule,\n SkyLookupModule,\n ],\n})\nexport class LookupResultTemplatesExampleComponent implements OnInit {\n public favoritesForm: FormGroup<{\n favoriteNames: FormControl<Person[] | null>;\n }>;\n\n protected showMoreConfig: SkyLookupShowMoreConfig = {\n nativePickerConfig: {\n selectionDescriptor: 'names',\n },\n };\n\n @ViewChild('modalItemTemplate')\n protected set modalItemTemplate(template: TemplateRef<unknown>) {\n if (this.showMoreConfig.nativePickerConfig) {\n this.showMoreConfig.nativePickerConfig.itemTemplate = template;\n } else {\n this.showMoreConfig.nativePickerConfig = { itemTemplate: template };\n }\n }\n\n readonly #svc = inject(DemoService);\n readonly #waitSvc = inject(SkyWaitService);\n\n constructor() {\n const names = new FormControl<Person[]>([\n {\n name: 'Shirley',\n formal: 'Ms. Bennett',\n },\n ]);\n\n this.favoritesForm = inject(FormBuilder).group({\n favoriteNames: names,\n });\n }\n\n public ngOnInit(): void {\n // If you need to execute some logic after the lookup values change,\n // subscribe to Angular's built-in value changes observable.\n this.favoritesForm.valueChanges.subscribe((changes) => {\n console.log('Lookup value changes:', changes);\n });\n }\n\n protected searchAsync(args: SkyAutocompleteSearchAsyncArgs): void {\n // In a real-world application the search service might return an Observable\n // created by calling HttpClient.get(). Assigning that Observable to the result\n // allows the lookup component to cancel the web request if it does not complete\n // before the user searches again.\n args.result = this.#svc.search(args.searchText).pipe(\n map((result) => ({\n hasMore: result.hasMore,\n items: result.people,\n totalCount: result.totalCount,\n })),\n );\n }\n\n protected addClick(args: SkyLookupAddClickEventArgs): void {\n const person: Person = {\n name: 'Newman',\n formal: 'Mr. Parker',\n };\n\n this.#waitSvc.blockingWrap(this.#svc.addPerson(person)).subscribe(() => {\n args.itemAdded({\n item: person,\n });\n });\n }\n\n protected onSubmit(): void {\n alert('Form submitted with: ' + JSON.stringify(this.favoritesForm.value));\n }\n}\n","<form\n class=\"lookup-example-form\"\n novalidate\n [formGroup]=\"favoritesForm\"\n (ngSubmit)=\"onSubmit()\"\n>\n <sky-input-box\n data-sky-id=\"favorite-names-field\"\n helpPopoverContent=\"A name can be selected from the list or added as a new name.\"\n hintText=\"Choose a name from the list or add a new name.\"\n labelText=\"Favorite names\"\n stacked\n >\n <sky-lookup\n formControlName=\"favoriteNames\"\n idProperty=\"name\"\n [enableShowMore]=\"true\"\n [searchResultTemplate]=\"dropdownItemTemplate\"\n [showAddButton]=\"true\"\n [showMoreConfig]=\"showMoreConfig\"\n (addClick)=\"addClick($event)\"\n (searchAsync)=\"searchAsync($event)\"\n />\n </sky-input-box>\n <div\n class=\"sky-border-dark sky-rounded-corners sky-padding-even-md sky-margin-stacked-lg\"\n >\n <strong>Form model:</strong>\n <pre>{{ favoritesForm.value | json }}</pre>\n </div>\n <button class=\"sky-btn sky-btn-default\" type=\"submit\">Submit</button>\n</form>\n\n<ng-template #dropdownItemTemplate let-item=\"item\">\n <span class=\"lookup-example-template-item\">\n <strong class=\"lookup-example-template-name\">{{ item.name }}</strong\n ><br />\n <span class=\"lookup-example-template-formal-name\">\n {{ item.formal }}\n </span>\n </span>\n</ng-template>\n<ng-template #modalItemTemplate let-item=\"item\">\n <span class=\"lookup-example-template-item\">\n <span class=\"lookup-example-template-name\">{{ item.name }}</span\n ><br />\n <i class=\"lookup-example-template-formal-name\">{{ item.formal }}</i>\n </span>\n</ng-template>\n","import { Injectable } from '@angular/core';\n\nimport { Observable, of } from 'rxjs';\nimport { delay } from 'rxjs/operators';\n\nimport { Person } from './person';\nimport { LookupAsyncDemoSearchResults } from './search-results';\n\nconst people: Person[] = [\n { name: 'Abed' },\n { name: 'Alex' },\n { name: 'Ben' },\n { name: 'Britta' },\n { name: 'Buzz' },\n { name: 'Craig' },\n { name: 'Elroy' },\n { name: 'Garrett' },\n { name: 'Ian' },\n { name: 'Jeff' },\n { name: 'Leonard' },\n { name: 'Neil' },\n { name: 'Pierce' },\n { name: 'Preston' },\n { name: 'Rachel' },\n { name: 'Shirley' },\n { name: 'Todd' },\n { name: 'Troy' },\n { name: 'Vaughn' },\n { name: 'Vicki' },\n];\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DemoService {\n public search(searchText: string): Observable<LookupAsyncDemoSearchResults> {\n // Simulate a network call with latency. A real-world application might\n // use Angular's HttpClient to create an Observable from a call to a\n // web service.\n searchText = searchText.toUpperCase();\n\n const matchingPeople = people.filter((person) =>\n person.name.toUpperCase().includes(searchText),\n );\n\n return of({\n hasMore: false,\n people: matchingPeople,\n totalCount: matchingPeople.length,\n }).pipe(delay(800));\n }\n\n public addPerson(person: Person): Observable<number> {\n // Simulate adding a person with a network call.\n if (!people.some((item) => item.name === person.name)) {\n people.unshift(person);\n }\n\n return of(1).pipe(delay(800));\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { Component, OnInit, inject } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n ValidationErrors,\n} from '@angular/forms';\nimport { SkyFormErrorModule, SkyInputBoxModule } from '@skyux/forms';\nimport { SkyWaitService } from '@skyux/indicators';\nimport {\n SkyAutocompleteSearchAsyncArgs,\n SkyLookupAddClickEventArgs,\n SkyLookupModule,\n SkyLookupShowMoreConfig,\n} from '@skyux/lookup';\n\nimport { map } from 'rxjs/operators';\n\nimport { DemoService } from './example.service';\nimport { Person } from './person';\n\n@Component({\n selector: 'app-lookup-single-select-example',\n templateUrl: './example.component.html',\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n SkyFormErrorModule,\n SkyInputBoxModule,\n SkyLookupModule,\n ],\n})\nexport class LookupSingleSelectExampleComponent implements OnInit {\n public favoritesForm: FormGroup<{\n favoriteName: FormControl<Person[] | null>;\n }>;\n\n public showMoreConfig: SkyLookupShowMoreConfig = {\n nativePickerConfig: {\n selectionDescriptor: 'names',\n },\n };\n\n readonly #svc = inject(DemoService);\n readonly #waitSvc = inject(SkyWaitService);\n\n constructor() {\n const name = new FormControl<Person[]>([{ name: 'Shirley' }], {\n validators: [\n (control: AbstractControl<Person[] | null>): ValidationErrors => {\n if (\n control.value?.some((person: Person) => !person.name.match(/e/i))\n ) {\n return { letterE: true };\n }\n\n return {};\n },\n ],\n });\n\n this.favoritesForm = inject(FormBuilder).group({\n favoriteName: name,\n });\n }\n\n public ngOnInit(): void {\n // If you need to execute some logic after the lookup values change,\n // subscribe to Angular's built-in value changes observable.\n this.favoritesForm.valueChanges.subscribe((changes) => {\n console.log('Lookup value changes:', changes);\n });\n }\n\n protected onSubmit(): void {\n alert('Form submitted with: ' + JSON.stringify(this.favoritesForm.value));\n }\n\n protected searchAsync(args: SkyAutocompleteSearchAsyncArgs): void {\n // In a real-world application the search service might return an Observable\n // created by calling HttpClient.get(). Assigning that Observable to the result\n // allows the lookup component to cancel the web request if it does not complete\n // before the user searches again.\n args.result = this.#svc.search(args.searchText).pipe(\n map((result) => ({\n hasMore: result.hasMore,\n items: result.people,\n totalCount: result.totalCount,\n })),\n );\n }\n\n protected addClick(args: SkyLookupAddClickEventArgs): void {\n const person: Person = {\n name: 'Newman',\n };\n\n this.#waitSvc.blockingWrap(this.#svc.addPerson(person)).subscribe(() => {\n args.itemAdded({\n item: person,\n });\n });\n }\n}\n","<form\n class=\"sky-padding-even-md\"\n novalidate\n [formGroup]=\"favoritesForm\"\n (ngSubmit)=\"onSubmit()\"\n>\n <sky-input-box\n data-sky-id=\"favorite-names-field\"\n helpPopoverContent=\"A name can be selected from the list or added as a new name.\"\n hintText=\"Choose a name from the list or add a new name.\"\n labelText=\"Favorite name\"\n stacked\n >\n <sky-lookup\n formControlName=\"favoriteName\"\n idProperty=\"name\"\n [enableShowMore]=\"true\"\n [selectMode]=\"'single'\"\n [showAddButton]=\"true\"\n [showMoreConfig]=\"showMoreConfig\"\n (searchAsync)=\"searchAsync($event)\"\n (addClick)=\"addClick($event)\"\n />\n @if (favoritesForm.controls.favoriteName.errors?.['letterE']) {\n <sky-form-error\n errorName=\"letterE\"\n errorText=\"Please only choose a name that contain the letter E\"\n />\n }\n </sky-input-box>\n <div\n class=\"sky-border-dark sky-rounded-corners sky-padding-even-md sky-margin-stacked-lg\"\n >\n <strong>Form model:</strong>\n <pre>{{ favoritesForm.value | json }}</pre>\n </div>\n <button class=\"sky-btn sky-btn-default\" type=\"submit\">Submit</button>\n</form>\n","import { Component } from '@angular/core';\nimport { SkyToolbarModule } from '@skyux/layout';\nimport { SkyRepeaterModule } from '@skyux/lists';\nimport { SkySearchModule } from '@skyux/lookup';\n\nimport { Item } from './item';\n\n@Component({\n selector: 'app-lookup-search-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyRepeaterModule, SkySearchModule, SkyToolbarModule],\n})\nexport class LookupSearchBasicExampleComponent {\n protected displayedItems: Item[];\n\n private items: Item[] = [\n {\n title: 'Call Robert Hernandez',\n note: 'Robert recently gave a very generous gift. We should call to thank him.',\n },\n {\n title: 'Send invitation to ball',\n note: \"The Spring Ball is coming up soon. Let's get those invitations out!\",\n },\n {\n title: 'Clean up desk',\n note: 'File and organize papers.',\n },\n {\n title: 'Investigate leads',\n note: 'Check out leads for important charity event funding.',\n },\n {\n title: 'Send thank you note',\n note: 'Send a thank you note to Timothy for his donation.',\n },\n ];\n\n protected placeholderText = 'Search through reminders.';\n protected searchAriaLabel = 'Search reminders';\n protected searchText = '';\n\n constructor() {\n this.displayedItems = this.items;\n }\n\n protected searchApplied(searchText: string): void {\n let filteredItems = this.items;\n this.searchText = searchText;\n\n if (searchText) {\n filteredItems = this.items.filter((item: Item) => {\n let property: keyof typeof item;\n\n for (property in item) {\n if (\n Object.prototype.hasOwnProperty.call(item, property) &&\n (property === 'title' || property === 'note')\n ) {\n if (item[property].includes(searchText)) {\n return true;\n }\n }\n }\n\n return false;\n });\n }\n\n this.displayedItems = filteredItems;\n }\n}\n","<sky-toolbar>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-default sky-example-search-bar-item\"\n type=\"button\"\n (click)=\"searchApplied('Robert')\"\n >\n Predefined search text\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <sky-search\n data-sky-id=\"example-search\"\n [ariaLabel]=\"searchAriaLabel\"\n [searchText]=\"searchText\"\n [debounceTime]=\"250\"\n [placeholderText]=\"placeholderText\"\n (searchApply)=\"searchApplied($event)\"\n (searchChange)=\"searchApplied($event)\"\n />\n </sky-toolbar-item>\n</sky-toolbar>\n<sky-repeater expandMode=\"none\">\n @for (item of displayedItems; track item) {\n <sky-repeater-item>\n <sky-repeater-item-title>\n {{ item.title }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n <div>\n {{ item.note }}\n </div>\n </sky-repeater-item-content>\n </sky-repeater-item>\n }\n</sky-repeater>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormGroup,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\n\nlet nextId = 21;\n\n@Component({\n selector: 'app-add-item-modal',\n templateUrl: './add-item-modal.component.html',\n imports: [ReactiveFormsModule, SkyInputBoxModule, SkyModalModule],\n})\nexport class AddItemModalComponent {\n protected readonly formGroup: FormGroup;\n\n readonly #modal = inject(SkyModalInstance);\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n id: [`${nextId++}`],\n name: ['', Validators.required],\n });\n }\n\n protected close(): void {\n this.#modal.close();\n }\n\n protected save(): void {\n if (this.formGroup.valid) {\n this.#modal.close(this.formGroup.value, 'save');\n } else {\n this.formGroup.markAllAsTouched();\n }\n }\n}\n","<form novalidate [formGroup]=\"formGroup\" (ngSubmit)=\"save()\">\n <sky-modal headingText=\"Add Item\">\n <sky-modal-content>\n <sky-input-box labelText=\"Name\">\n <input\n type=\"text\"\n autocapitalize=\"words\"\n autocomplete=\"off\"\n formControlName=\"name\"\n class=\"sky-form-control\"\n />\n </sky-input-box>\n </sky-modal-content>\n <sky-modal-footer>\n <button class=\"sky-btn sky-btn-default\" type=\"button\" (click)=\"close()\">\n Cancel\n </button>\n <button class=\"sky-btn sky-btn-primary\" type=\"submit\">Add</button>\n </sky-modal-footer>\n </sky-modal>\n</form>\n","import { Injectable } from '@angular/core';\n\nimport { Observable, of } from 'rxjs';\nimport { delay } from 'rxjs/operators';\n\nimport { Person } from './person';\nimport { SearchResults } from './search-results';\n\nconst people: Person[] = [\n { id: '1', name: 'Abed' },\n { id: '2', name: 'Alex' },\n { id: '3', name: 'Ben' },\n { id: '4', name: 'Britta' },\n { id: '5', name: 'Buzz' },\n { id: '6', name: 'Craig' },\n { id: '7', name: 'Elroy' },\n { id: '8', name: 'Garrett' },\n { id: '9', name: 'Ian' },\n { id: '10', name: 'Jeff' },\n { id: '11', name: 'Leonard' },\n { id: '12', name: 'Neil' },\n { id: '13', name: 'Pierce' },\n { id: '14', name: 'Preston' },\n { id: '15', name: 'Rachel' },\n { id: '16', name: 'Shirley' },\n { id: '17', name: 'Todd' },\n { id: '18', name: 'Troy' },\n { id: '19', name: 'Vaughn' },\n { id: '20', name: 'Vicki' },\n];\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DemoService {\n public addItem(item: Person): void {\n people.push(item);\n }\n\n public search(searchText: string): Observable<SearchResults> {\n // Simulate a network call with latency. A real-world application might\n // use Angular's HttpClient to create an Observable from a call to a\n // web service.\n searchText = searchText.toUpperCase();\n\n const matchingPeople = people.filter((person) =>\n person.name.toUpperCase().includes(searchText),\n );\n\n return of({\n hasMore: false,\n people: matchingPeople,\n totalCount: matchingPeople.length,\n }).pipe(delay(800));\n }\n}\n","import { Component, OnDestroy, inject } from '@angular/core';\nimport {\n SkySelectionModalAddClickEventArgs,\n SkySelectionModalCloseArgs,\n SkySelectionModalSearchResult,\n SkySelectionModalService,\n} from '@skyux/lookup';\nimport { SkyModalService } from '@skyux/modals';\n\nimport { Subscription } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\nimport { AddItemModalComponent } from './add-item-modal.component';\nimport { DemoService } from './example.service';\nimport { Person } from './person';\n\n@Component({\n standalone: true,\n selector: 'app-lookup-selection-modal-add-item-example',\n templateUrl: './example.component.html',\n})\nexport class LookupSelectionModalAddItemExampleComponent implements OnDestroy {\n protected selectedPeople: Person[] | undefined;\n\n #subscriptions = new Subscription();\n\n readonly #modalSvc = inject(SkyModalService);\n readonly #searchSvc = inject(DemoService);\n readonly #selectionModalSvc = inject(SkySelectionModalService);\n\n public ngOnDestroy(): void {\n this.#subscriptions.unsubscribe();\n }\n\n protected showSelectionModal(): void {\n const instance = this.#selectionModalSvc.open({\n descriptorProperty: 'name',\n idProperty: 'id',\n selectionDescriptor: 'person',\n searchAsync: (args) =>\n this.#searchSvc.search(args.searchText).pipe(\n map(\n (results): SkySelectionModalSearchResult => ({\n hasMore: results.hasMore,\n items: results.people,\n totalCount: results.totalCount,\n }),\n ),\n ),\n selectMode: 'single',\n showAddButton: true,\n addClick: (args: SkySelectionModalAddClickEventArgs) => {\n const modal = this.#modalSvc.open(AddItemModalComponent);\n\n this.#subscriptions.add(\n modal.closed.subscribe((close) => {\n if (close.reason === 'save') {\n const person = close.data as Person;\n this.#searchSvc.addItem(person);\n args.itemAdded({ item: person });\n }\n }),\n );\n },\n });\n\n this.#subscriptions.add(\n instance.closed.subscribe((args: SkySelectionModalCloseArgs) => {\n if (args.reason === 'save') {\n this.selectedPeople = args.selectedItems as Person[];\n }\n }),\n );\n }\n}\n","<div class=\"sky-margin-stacked-xl\">\n <button\n class=\"sky-btn sky-btn-default selection-modal-example-show-btn\"\n type=\"button\"\n (click)=\"showSelectionModal()\"\n >\n Select a value\n </button>\n</div>\n\n@if (selectedPeople?.length) {\n <div>\n Selected people:\n <ul class=\"selection-modal-example-selected\">\n @for (selectedPerson of selectedPeople; track selectedPerson) {\n <li>\n {{ selectedPerson.name }}\n </li>\n }\n </ul>\n </div>\n}\n","import { Injectable } from '@angular/core';\n\nimport { Observable, of } from 'rxjs';\nimport { delay } from 'rxjs/operators';\n\nimport { Person } from './person';\nimport { SearchResults } from './search-results';\n\nconst people: Person[] = [\n { id: '1', name: 'Abed' },\n { id: '2', name: 'Alex' },\n { id: '3', name: 'Ben' },\n { id: '4', name: 'Britta' },\n { id: '5', name: 'Buzz' },\n { id: '6', name: 'Craig' },\n { id: '7', name: 'Elroy' },\n { id: '8', name: 'Garrett' },\n { id: '9', name: 'Ian' },\n { id: '10', name: 'Jeff' },\n { id: '11', name: 'Leonard' },\n { id: '12', name: 'Neil' },\n { id: '13', name: 'Pierce' },\n { id: '14', name: 'Preston' },\n { id: '15', name: 'Rachel' },\n { id: '16', name: 'Shirley' },\n { id: '17', name: 'Todd' },\n { id: '18', name: 'Troy' },\n { id: '19', name: 'Vaughn' },\n { id: '20', name: 'Vicki' },\n];\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DemoService {\n public search(searchText: string): Observable<SearchResults> {\n // Simulate a network call with latency. A real-world application might\n // use Angular's HttpClient to create an Observable from a call to a\n // web service.\n searchText = searchText.toUpperCase();\n\n const matchingPeople = people.filter((person) =>\n person.name.toUpperCase().includes(searchText),\n );\n\n return of({\n hasMore: false,\n people: matchingPeople,\n totalCount: matchingPeople.length,\n }).pipe(delay(800));\n }\n}\n","import { Component, inject } from '@angular/core';\nimport {\n SkySelectionModalSearchResult,\n SkySelectionModalService,\n} from '@skyux/lookup';\n\nimport { map } from 'rxjs/operators';\n\nimport { DemoService } from './example.service';\nimport { Person } from './person';\n\n@Component({\n standalone: true,\n selector: 'app-lookup-selection-modal-basic-example',\n templateUrl: './example.component.html',\n})\nexport class LookupSelectionModalBasicExampleComponent {\n protected selectedPeople: Person[] | undefined;\n\n readonly #searchSvc = inject(DemoService);\n readonly #selectionModalSvc = inject(SkySelectionModalService);\n\n protected showSelectionModal(): void {\n const instance = this.#selectionModalSvc.open({\n descriptorProperty: 'name',\n idProperty: 'id',\n selectionDescriptor: 'person',\n searchAsync: (args) =>\n this.#searchSvc.search(args.searchText).pipe(\n map(\n (results): SkySelectionModalSearchResult => ({\n hasMore: results.hasMore,\n items: results.people,\n totalCount: results.totalCount,\n }),\n ),\n ),\n selectMode: 'single',\n });\n\n instance.closed.subscribe((args) => {\n if (args.reason === 'save') {\n this.selectedPeople = args.selectedItems as Person[];\n }\n });\n }\n}\n","<div class=\"sky-margin-stacked-xl\">\n <button\n type=\"button\"\n class=\"sky-btn sky-btn-default selection-modal-example-show-btn\"\n (click)=\"showSelectionModal()\"\n >\n Select a value\n </button>\n</div>\n\n@if (selectedPeople?.length) {\n <div>\n Selected people:\n <ul class=\"selection-modal-example-selected\">\n @for (selectedPerson of selectedPeople; track selectedPerson) {\n <li>\n {{ selectedPerson.name }}\n </li>\n }\n </ul>\n </div>\n}\n","import { Component, inject } from '@angular/core';\nimport { SkyConfirmService } from '@skyux/modals';\n\n@Component({\n selector: 'app-modals-confirm-basic-with-controller-example',\n standalone: true,\n template: `<button\n aria-haspopup=\"dialog\"\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"launchConfirm()\"\n >\n Open confirm\n </button>`,\n})\nexport class ModalsConfirmBasicWithControllerExampleComponent {\n public selectedAction: string | undefined;\n\n readonly #confirmSvc = inject(SkyConfirmService);\n\n public launchConfirm(): void {\n const dialog = this.#confirmSvc.open({\n message: 'Are you sure?',\n });\n\n dialog.closed.subscribe((args) => {\n this.selectedAction = args.action;\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport {\n SkyHelpOpenArgs,\n SkyHelpService,\n SkyHelpUpdateArgs,\n} from '@skyux/core';\n\n/**\n * This is a mock implementation of the help service. In a production scenario,\n * the `SkyHelpService` would be provided at the application root.\n * @see: https://developer.blackbaud.com/skyux/learn/develop/global-help\n */\n@Injectable({ providedIn: 'root' })\nexport class MyHelpService extends SkyHelpService {\n public override openHelp(args?: SkyHelpOpenArgs): void {\n if (args) {\n console.error(`Open help panel to key: ${args.helpKey}`);\n }\n }\n\n public override updateHelp(args: SkyHelpUpdateArgs): void {\n if ('helpKey' in args) {\n console.error(`help key update: ${args.helpKey}`);\n }\n\n if ('pageDefaultHelpKey' in args) {\n console.error(`page default help key update: ${args.pageDefaultHelpKey}`);\n }\n }\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable()\nexport class ModalContext {\n public data:\n | {\n value1: string;\n }\n | undefined;\n}\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\n\nimport { ModalContext } from './modal-context';\n\n@Component({\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyInputBoxModule,\n SkyModalModule,\n ],\n template: `\n <form [formGroup]=\"exampleForm\" (submit)=\"saveForm()\">\n <sky-modal headingText=\"Modal title\" helpKey=\"help.html\">\n <sky-modal-content>\n <sky-input-box>\n <input formControlName=\"value1\" type=\"text\" />\n </sky-input-box>\n </sky-modal-content>\n <sky-modal-footer>\n <button class=\"sky-btn sky-btn-primary\" type=\"submit\">Save</button>\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n (click)=\"cancelForm()\"\n >\n Cancel\n </button>\n </sky-modal-footer>\n </sky-modal>\n </form>\n `,\n})\nexport class ModalComponent {\n protected exampleForm: FormGroup<{\n value1: FormControl<string | null | undefined>;\n }>;\n\n readonly #context = inject(ModalContext);\n readonly #instance = inject(SkyModalInstance);\n\n constructor() {\n this.exampleForm = inject(FormBuilder).group({\n value1: new FormControl(this.#context.data?.value1),\n });\n }\n\n protected cancelForm(): void {\n this.#instance.cancel();\n }\n\n protected saveForm(): void {\n this.#instance.save({});\n }\n}\n","import { Component, OnDestroy, inject } from '@angular/core';\nimport { SkyHelpService } from '@skyux/core';\nimport {\n SkyModalError,\n SkyModalInstance,\n SkyModalService,\n} from '@skyux/modals';\n\nimport { MyHelpService } from './help.service';\nimport { ModalContext } from './modal-context';\nimport { ModalComponent } from './modal.component';\n\n@Component({\n selector: 'app-modals-modal-basic-with-controller-example',\n standalone: true,\n template: `<button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"openModal()\"\n >\n Open modal\n </button>`,\n})\nexport class ModalsModalBasicWithControllerExampleComponent\n implements OnDestroy\n{\n public hasErrors = false;\n\n protected errors: SkyModalError[] = [];\n\n readonly #instances: SkyModalInstance[] = [];\n readonly #modalSvc = inject(SkyModalService);\n\n public ngOnDestroy(): void {\n this.#instances.forEach((i) => {\n i.close();\n });\n }\n\n public openModal(): void {\n const instance = this.#modalSvc.open(ModalComponent, {\n providers: [\n {\n provide: ModalContext,\n useValue: { value1: 'Hello!' },\n },\n // NOTE: The help service is normally provided at the application root, but\n // it is added here purely for examplenstration purposes.\n // See: https://developer.blackbaud.com/skyux/learn/develop/global-help\n {\n provide: SkyHelpService,\n useExisting: MyHelpService,\n },\n ],\n });\n\n instance.beforeClose.subscribe((handler) => {\n if (this.hasErrors && handler.closeArgs.reason !== 'cancel') {\n this.errors = [\n {\n message: 'Something bad happened.',\n },\n ];\n } else {\n handler.closeModal();\n }\n });\n\n this.#instances.push(instance);\n }\n}\n","import { Component, inject } from '@angular/core';\nimport {\n SkyConfirmButtonConfig,\n SkyConfirmInstance,\n SkyConfirmService,\n SkyConfirmType,\n} from '@skyux/modals';\n\n@Component({\n selector: 'app-modals-confirm-basic-with-harness-example',\n standalone: true,\n templateUrl: './example.component.html',\n})\nexport class ModalsConfirmBasicWithHarnessExampleComponent {\n protected selectedAction: string | undefined;\n protected selectedText: string | undefined;\n\n readonly #confirmSvc = inject(SkyConfirmService);\n\n protected openOKConfirm(): void {\n const dialog: SkyConfirmInstance = this.#confirmSvc.open({\n message:\n 'Cannot delete invoice because it has vendor, credit memo, or purchase order activity.',\n });\n\n dialog.closed.subscribe((result) => {\n this.selectedText = undefined;\n this.selectedAction = result.action;\n });\n }\n\n protected openTwoActionConfirm(): void {\n const buttons: SkyConfirmButtonConfig[] = [\n { text: 'Finalize', action: 'save', styleType: 'primary' },\n { text: 'Cancel', action: 'cancel', styleType: 'link' },\n ];\n\n const dialog: SkyConfirmInstance = this.#confirmSvc.open({\n message: 'Finalize report cards?',\n body: 'Grades cannot be changed once the report cards are finalized.',\n type: SkyConfirmType.Custom,\n buttons,\n });\n\n dialog.closed.subscribe((result) => {\n this.selectedAction = result.action;\n\n for (const button of buttons) {\n if (button.action === result.action) {\n this.selectedText = button.text;\n break;\n }\n }\n });\n }\n\n protected openThreeActionConfirm(): void {\n const buttons: SkyConfirmButtonConfig[] = [\n { text: 'Save', action: 'save', styleType: 'primary' },\n { text: 'Delete', action: 'delete' },\n { text: 'Keep working', action: 'cancel', styleType: 'link' },\n ];\n\n const dialog = this.#confirmSvc.open({\n message: 'Save your changes before leaving?',\n type: SkyConfirmType.Custom,\n buttons,\n });\n\n dialog.closed.subscribe((result) => {\n this.selectedAction = result.action;\n\n for (const button of buttons) {\n if (button.action === result.action) {\n this.selectedText = button.text;\n break;\n }\n }\n });\n }\n\n protected openDeleteConfirm(): void {\n const buttons: SkyConfirmButtonConfig[] = [\n { text: 'Delete', action: 'delete', styleType: 'danger' },\n { text: 'Cancel', action: 'cancel', styleType: 'link' },\n ];\n\n const dialog = this.#confirmSvc.open({\n message: 'Delete this account?',\n body: 'Deleting this account may affect processes that are currently running.',\n type: SkyConfirmType.Custom,\n buttons,\n });\n\n dialog.closed.subscribe((result) => {\n this.selectedAction = result.action;\n\n for (const button of buttons) {\n if (button.action === result.action) {\n this.selectedText = button.text;\n break;\n }\n }\n });\n }\n}\n","<button\n aria-haspopup=\"dialog\"\n class=\"sky-btn sky-btn-default sky-margin-inline-sm ok-confirm-btn\"\n type=\"button\"\n (click)=\"openOKConfirm()\"\n>\n OK confirm\n</button>\n\n<button\n aria-haspopup=\"dialog\"\n class=\"sky-btn sky-btn-default sky-margin-inline-sm two-action-confirm-btn\"\n type=\"button\"\n (click)=\"openTwoActionConfirm()\"\n>\n Confirm with two actions\n</button>\n\n<button\n aria-haspopup=\"dialog\"\n class=\"sky-btn sky-btn-default sky-margin-inline-sm\"\n type=\"button\"\n (click)=\"openThreeActionConfirm()\"\n>\n Confirm with three actions\n</button>\n\n<button\n aria-haspopup=\"dialog\"\n class=\"sky-btn sky-btn-default sky-margin-inline-sm\"\n type=\"button\"\n (click)=\"openDeleteConfirm()\"\n>\n Confirm with delete button\n</button>\n\n@if (selectedAction) {\n @if (selectedText) {\n <p class=\"displayed-text\">\n You selected the \"{{ selectedText }}\" button, which has an action of \"{{\n selectedAction\n }}.\"\n </p>\n } @else {\n <p class=\"displayed-text\">\n You selected the \"{{ selectedAction }}\" action.\n </p>\n }\n}\n","import { ModalDemoData } from './data';\n\nexport class ModalDemoContext {\n constructor(public data: ModalDemoData) {}\n}\n","import { Injectable } from '@angular/core';\n\nimport { Observable, of } from 'rxjs';\nimport { delay } from 'rxjs/operators';\n\nimport { ModalDemoData } from './data';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ModalDemoDataService {\n #data: ModalDemoData = {\n value1: 'Hello world',\n };\n\n public load(): Observable<ModalDemoData> {\n // Simulate a network request to get data.\n return of(this.#data).pipe(delay(1000));\n }\n\n public save(data: ModalDemoData): Observable<ModalDemoData> {\n this.#data = data;\n\n // Simulate a network request to save data.\n return of(this.#data).pipe(delay(1000));\n }\n}\n","import { Component, inject } from '@angular/core';\nimport { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyWaitService } from '@skyux/indicators';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\n\nimport { ModalDemoContext } from './context';\nimport { ModalDemoDataService } from './data.service';\n\n@Component({\n selector: 'app-modal',\n templateUrl: './modal.component.html',\n imports: [ReactiveFormsModule, SkyInputBoxModule, SkyModalModule],\n})\nexport class ModalComponent {\n protected exampleForm: FormGroup<{\n value1: FormControl<string | null | undefined>;\n }>;\n\n readonly #context = inject(ModalDemoContext);\n readonly #dataSvc = inject(ModalDemoDataService);\n readonly #instance = inject(SkyModalInstance);\n readonly #waitSvc = inject(SkyWaitService);\n\n constructor() {\n this.exampleForm = new FormGroup({\n value1: new FormControl(this.#context.data.value1),\n });\n }\n\n protected saveForm(): void {\n // Use the data service to save the data.\n\n this.#waitSvc\n .blockingWrap(this.#dataSvc.save(this.exampleForm.value))\n .subscribe((data) => {\n // Notify the modal instance that data was saved and return the saved data.\n this.#instance.save(data);\n });\n }\n\n protected cancelForm(): void {\n this.#instance.cancel();\n }\n}\n","<form [formGroup]=\"exampleForm\" (submit)=\"saveForm()\">\n <sky-modal\n data-sky-id=\"modal-example\"\n headingText=\"Modal title\"\n helpPopoverContent=\"Use the help inline component to invoke contextual user assistance.\"\n [isDirty]=\"exampleForm.dirty\"\n >\n <sky-modal-content>\n <sky-input-box labelText=\"An input inside a modal\">\n <input formControlName=\"value1\" type=\"text\" />\n </sky-input-box>\n </sky-modal-content>\n <sky-modal-footer>\n <button class=\"sky-btn sky-btn-primary\" type=\"submit\">Save</button>\n <button class=\"sky-btn sky-btn-link\" type=\"button\" (click)=\"cancelForm()\">\n Cancel\n </button>\n </sky-modal-footer>\n </sky-modal>\n</form>\n","import { Component, OnDestroy, inject } from '@angular/core';\nimport { SkyWaitService } from '@skyux/indicators';\nimport { SkyModalConfigurationInterface, SkyModalService } from '@skyux/modals';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { ModalDemoContext } from './context';\nimport { ModalDemoData } from './data';\nimport { ModalDemoDataService } from './data.service';\nimport { ModalComponent } from './modal.component';\n\n@Component({\n standalone: true,\n selector: 'app-modals-modal-basic-with-harness-example',\n templateUrl: './example.component.html',\n})\nexport class ModalsModalBasicWithHarnessExampleComponent implements OnDestroy {\n protected modalSize = 'medium';\n protected exampleValue: string | null | undefined;\n\n #ngUnsubscribe = new Subject<void>();\n\n readonly #dataSvc = inject(ModalDemoDataService);\n readonly #modalSvc = inject(SkyModalService);\n readonly #waitSvc = inject(SkyWaitService);\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n public onOpenModalClick(): void {\n // Display a blocking wait while data is loaded from the data service.\n this.#waitSvc\n .blockingWrap(this.#dataSvc.load())\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((data) => {\n const options: SkyModalConfigurationInterface = {\n providers: [\n {\n provide: ModalDemoContext,\n useValue: new ModalDemoContext(data),\n },\n ],\n size: this.modalSize,\n };\n\n // Show the modal after data is loaded.\n const instance = this.#modalSvc.open(ModalComponent, options);\n\n instance.closed.subscribe((result) => {\n if (result.reason === 'save') {\n // Display the updated value.\n this.exampleValue = (result.data as ModalDemoData).value1;\n }\n });\n });\n }\n}\n","<button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"onOpenModalClick()\"\n>\n Open modal example\n</button>\n@if (exampleValue) {\n <div>The user entered {{ exampleValue }}</div>\n}\n","import { ModalDemoData } from './data';\n\nexport class ModalDemoContext {\n constructor(public data: ModalDemoData) {}\n}\n","import { Injectable } from '@angular/core';\n\nimport { Observable, of } from 'rxjs';\nimport { delay } from 'rxjs/operators';\n\nimport { ModalDemoData } from './data';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ModalDemoDataService {\n #data: ModalDemoData = {\n value1: 'Hello world',\n };\n\n public load(): Observable<ModalDemoData> {\n // Simulate a network request to get data.\n return of(this.#data).pipe(delay(1000));\n }\n\n public save(data: ModalDemoData): Observable<ModalDemoData> {\n this.#data = data;\n\n // Simulate a network request to save data.\n return of(this.#data).pipe(delay(1000));\n }\n}\n","import { Component, inject } from '@angular/core';\nimport { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyWaitService } from '@skyux/indicators';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\n\nimport { ModalDemoContext } from './context';\nimport { ModalDemoDataService } from './data.service';\n\n@Component({\n selector: 'app-modal',\n templateUrl: './modal.component.html',\n imports: [ReactiveFormsModule, SkyInputBoxModule, SkyModalModule],\n})\nexport class ModalComponent {\n protected exampleForm: FormGroup<{\n value1: FormControl<string | null | undefined>;\n }>;\n\n readonly #context = inject(ModalDemoContext);\n readonly #dataSvc = inject(ModalDemoDataService);\n readonly #instance = inject(SkyModalInstance);\n readonly #waitSvc = inject(SkyWaitService);\n\n constructor() {\n this.exampleForm = new FormGroup({\n value1: new FormControl(this.#context.data.value1),\n });\n }\n\n protected saveForm(): void {\n // Use the data service to save the data.\n\n this.#waitSvc\n .blockingWrap(this.#dataSvc.save(this.exampleForm.value))\n .subscribe((data) => {\n // Notify the modal instance that data was saved and return the saved data.\n this.#instance.save(data);\n });\n }\n\n protected cancelForm(): void {\n this.#instance.cancel();\n }\n}\n","<form [formGroup]=\"exampleForm\" (submit)=\"saveForm()\">\n <sky-modal\n data-sky-id=\"modal-example\"\n headingText=\"Modal title\"\n helpKey=\"modal-help\"\n [isDirty]=\"exampleForm.dirty\"\n >\n <sky-modal-content>\n <sky-input-box labelText=\"An input inside a modal\">\n <input formControlName=\"value1\" type=\"text\" />\n </sky-input-box>\n </sky-modal-content>\n <sky-modal-footer>\n <button class=\"sky-btn sky-btn-primary\" type=\"submit\">Save</button>\n <button class=\"sky-btn sky-btn-link\" type=\"button\" (click)=\"cancelForm()\">\n Cancel\n </button>\n </sky-modal-footer>\n </sky-modal>\n</form>\n","import { Component, OnDestroy, inject } from '@angular/core';\nimport { SkyWaitService } from '@skyux/indicators';\nimport { SkyModalConfigurationInterface, SkyModalService } from '@skyux/modals';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { ModalDemoContext } from './context';\nimport { ModalDemoData } from './data';\nimport { ModalDemoDataService } from './data.service';\nimport { ModalComponent } from './modal.component';\n\n@Component({\n standalone: true,\n selector: 'app-modals-modal-basic-with-harness-help-key-example',\n templateUrl: './example.component.html',\n})\nexport class ModalsModalBasicWithHarnessHelpKeyExampleComponent\n implements OnDestroy\n{\n protected modalSize = 'medium';\n protected exampleValue: string | null | undefined;\n\n #ngUnsubscribe = new Subject<void>();\n\n readonly #dataSvc = inject(ModalDemoDataService);\n readonly #modalSvc = inject(SkyModalService);\n readonly #waitSvc = inject(SkyWaitService);\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n public onOpenModalClick(): void {\n // Display a blocking wait while data is loaded from the data service.\n this.#waitSvc\n .blockingWrap(this.#dataSvc.load())\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((data) => {\n const options: SkyModalConfigurationInterface = {\n providers: [\n {\n provide: ModalDemoContext,\n useValue: new ModalDemoContext(data),\n },\n ],\n size: this.modalSize,\n };\n\n // Show the modal after data is loaded.\n const instance = this.#modalSvc.open(ModalComponent, options);\n\n instance.closed.subscribe((result) => {\n if (result.reason === 'save') {\n // Display the updated value.\n this.exampleValue = (result.data as ModalDemoData).value1;\n }\n });\n });\n }\n}\n","<button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"onOpenModalClick()\"\n>\n Open modal example\n</button>\n@if (exampleValue) {\n <div>The user entered {{ exampleValue }}</div>\n}\n","import { ModalDemoData } from './data';\n\nexport class ModalDemoContext {\n constructor(public data: ModalDemoData) {}\n}\n","import { Injectable } from '@angular/core';\n\nimport { Observable, of } from 'rxjs';\nimport { delay } from 'rxjs/operators';\n\nimport { ModalDemoData } from './data';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ModalDemoDataService {\n #data: ModalDemoData = {\n value1: 'Hello world',\n };\n\n public load(): Observable<ModalDemoData> {\n // Simulate a network request to get data.\n return of(this.#data).pipe(delay(1000));\n }\n\n public save(data: ModalDemoData, error = false): Observable<ModalDemoData> {\n if (!error) {\n this.#data = data;\n }\n\n // Simulate a network request to save data.\n return of(this.#data).pipe(delay(1000));\n }\n}\n","import { Component, inject } from '@angular/core';\nimport { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyWaitService } from '@skyux/indicators';\nimport { SkyModalError, SkyModalInstance, SkyModalModule } from '@skyux/modals';\n\nimport { ModalDemoContext } from './context';\nimport { ModalDemoDataService } from './data.service';\n\n@Component({\n selector: 'app-modal',\n templateUrl: './modal.component.html',\n imports: [ReactiveFormsModule, SkyInputBoxModule, SkyModalModule],\n})\nexport class ModalComponent {\n protected exampleForm: FormGroup<{\n value1: FormControl<string | null | undefined>;\n }>;\n\n readonly #context = inject(ModalDemoContext);\n readonly #dataSvc = inject(ModalDemoDataService);\n readonly #instance = inject(SkyModalInstance);\n readonly #waitSvc = inject(SkyWaitService);\n\n public errors: SkyModalError[] = [];\n\n constructor() {\n this.exampleForm = new FormGroup({\n value1: new FormControl(this.#context.data.value1),\n });\n }\n\n protected saveForm(): void {\n // Use the data service to save the data.\n\n this.#waitSvc\n .blockingWrap(this.#dataSvc.save(this.exampleForm.value))\n .subscribe((data) => {\n // Notify the modal instance that data was saved and return the saved data.\n this.#instance.save(data);\n });\n }\n\n protected saveFormWithFormError(): void {\n // Use the data service to save the data.\n\n this.#waitSvc\n .blockingWrap(this.#dataSvc.save(this.exampleForm.value, true))\n .subscribe(() => {\n this.errors = [{ message: 'There was an error saving the form.' }];\n });\n }\n\n protected cancelForm(): void {\n this.#instance.cancel();\n }\n}\n","<form [formGroup]=\"exampleForm\" (submit)=\"saveForm()\">\n <sky-modal\n data-sky-id=\"modal-example\"\n headingText=\"Modal title\"\n [isDirty]=\"exampleForm.dirty\"\n [formErrors]=\"errors\"\n >\n <sky-modal-content>\n <sky-input-box labelText=\"An input inside a modal\">\n <input formControlName=\"value1\" type=\"text\" />\n </sky-input-box>\n </sky-modal-content>\n <sky-modal-footer>\n <button class=\"sky-btn sky-btn-primary\" type=\"submit\">Save</button>\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n (click)=\"saveFormWithFormError()\"\n >\n Save form with an error\n </button>\n <button class=\"sky-btn sky-btn-link\" type=\"button\" (click)=\"cancelForm()\">\n Cancel\n </button>\n </sky-modal-footer>\n </sky-modal>\n</form>\n","import { Component, OnDestroy, inject } from '@angular/core';\nimport { SkyWaitService } from '@skyux/indicators';\nimport { SkyModalConfigurationInterface, SkyModalService } from '@skyux/modals';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { ModalDemoContext } from './context';\nimport { ModalDemoData } from './data';\nimport { ModalDemoDataService } from './data.service';\nimport { ModalComponent } from './modal.component';\n\n@Component({\n standalone: true,\n selector: 'app-modals-modal-with-error-example',\n templateUrl: './example.component.html',\n})\nexport class ModalsModalWithErrorExampleComponent implements OnDestroy {\n protected modalSize = 'medium';\n protected exampleValue: string | null | undefined;\n\n #ngUnsubscribe = new Subject<void>();\n\n readonly #dataSvc = inject(ModalDemoDataService);\n readonly #modalSvc = inject(SkyModalService);\n readonly #waitSvc = inject(SkyWaitService);\n\n public ngOnDestroy(): void {\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n public onOpenModalClick(): void {\n // Display a blocking wait while data is loaded from the data service.\n this.#waitSvc\n .blockingWrap(this.#dataSvc.load())\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe((data) => {\n const options: SkyModalConfigurationInterface = {\n providers: [\n {\n provide: ModalDemoContext,\n useValue: new ModalDemoContext(data),\n },\n ],\n size: this.modalSize,\n };\n\n // Show the modal after data is loaded.\n const instance = this.#modalSvc.open(ModalComponent, options);\n\n instance.closed.subscribe((result) => {\n if (result.reason === 'save') {\n // Display the updated value.\n this.exampleValue = (result.data as ModalDemoData).value1;\n }\n });\n });\n }\n}\n","<button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"onOpenModalClick()\"\n>\n Open modal example\n</button>\n@if (exampleValue) {\n <div>The user entered {{ exampleValue }}</div>\n}\n","import { Component } from '@angular/core';\nimport { SkyRepeaterModule } from '@skyux/lists';\nimport { SkyDropdownModule } from '@skyux/popovers';\nimport { SkyTilesModule } from '@skyux/tiles';\n\n@Component({\n selector: 'app-tile-my-actions',\n styles: `\n :host {\n display: block;\n }\n `,\n templateUrl: './tile-my-actions.component.html',\n imports: [SkyTilesModule, SkyDropdownModule, SkyRepeaterModule],\n})\nexport class TileMyActionsComponent {\n protected items: {\n date: string;\n status?: string;\n title?: string;\n accessibilityLabel?: string;\n }[] = [\n {\n title: 'Send invitation to Spring Ball',\n date: 'Today',\n },\n {\n title: 'Review portal activity',\n date: '10/2/2024',\n },\n {\n title: 'Assign prospects',\n date: '10/3/2024',\n },\n ];\n protected onActionClicked(buttonText: string): void {\n alert(buttonText + ' was clicked!');\n }\n}\n","<sky-tile tileName=\"My actions\">\n <sky-tile-title> My actions </sky-tile-title>\n <sky-tile-summary> 3 </sky-tile-summary>\n <sky-tile-content>\n <sky-tile-content-section>\n <sky-repeater data-sky-id=\"repeater-example\">\n @for (item of items; track item) {\n <sky-repeater-item [itemName]=\"item.accessibilityLabel\">\n @if (item.title) {\n <sky-repeater-item-title class=\"example-repeater-flex\">\n <div\n class=\"example-repeater-item-title sky-font-emphasized sky-margin-stacked-sm\"\n >\n <a href=\"/\">{{ item.title }}</a>\n </div>\n <div class=\"sky-font-deemphasized\">{{ item.date }}</div>\n </sky-repeater-item-title>\n }\n <sky-repeater-item-context-menu>\n <sky-dropdown buttonType=\"context-menu\">\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"\n 'Action 1 for ' +\n (item.title ?? item.accessibilityLabel)\n \"\n (click)=\"onActionClicked('Action 1')\"\n >\n Edit\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"\n 'Action 2 for ' +\n (item.title ?? item.accessibilityLabel)\n \"\n (click)=\"onActionClicked('Action 2')\"\n >\n Mark as complete\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n </sky-repeater-item-context-menu>\n </sky-repeater-item>\n }\n </sky-repeater>\n </sky-tile-content-section>\n </sky-tile-content>\n</sky-tile>\n","import { Component } from '@angular/core';\nimport { SkyTilesModule } from '@skyux/tiles';\n\n@Component({\n selector: 'app-tile-updates',\n styles: `\n :host {\n display: block;\n }\n `,\n templateUrl: './tile-updates.component.html',\n imports: [SkyTilesModule],\n})\nexport class TileUpdatesComponent {}\n","<sky-tile tileName=\"Updates\" [showSettings]=\"false\">\n <sky-tile-title> Updates </sky-tile-title>\n <sky-tile-summary> 2 </sky-tile-summary>\n <sky-tile-content>\n <sky-tile-content-section>\n <h3 class=\"sky-font-heading-3 sky-margin-stacked-sm\">\n <a href=\"#\">Prepare for Giving Tuesday</a>\n </h3>\n <div class=\"sky-font-deemphasized sky-margin-stacked-sm\">10/1/2025</div>\n <div>\n Tips for creating a clear and compelling message, leveraging social\n media and email marketing, and providing multiple ways for donors to\n give.\n </div>\n </sky-tile-content-section>\n <sky-tile-content-section>\n <h3 class=\"sky-font-heading-3 sky-margin-stacked-sm\">\n <a href=\"#\">What's new</a>\n </h3>\n <div class=\"sky-font-deemphasized sky-margin-stacked-sm\">9/28/2025</div>\n <ul>\n <li>Enhancement visualizations in reporting capabilities</li>\n <li>New automation for routine tasks</li>\n <li>Scan attachments for viruses</li>\n </ul>\n </sky-tile-content-section>\n </sky-tile-content>\n</sky-tile>\n","import { NgClass, NgFor } from '@angular/common';\nimport { Component } from '@angular/core';\nimport { SkyTileDashboardConfig, SkyTilesModule } from '@skyux/tiles';\n\nimport { TileMyActionsComponent } from './tile-my-actions.component';\nimport { TileUpdatesComponent } from './tile-updates.component';\n\n@Component({\n selector: 'app-home-page-content',\n templateUrl: './home-page-content.component.html',\n imports: [NgClass, NgFor, SkyTilesModule],\n})\nexport class HomePageContentComponent {\n protected dashboardConfig: SkyTileDashboardConfig = {\n tiles: [\n {\n id: 'tile-updates',\n componentType: TileUpdatesComponent,\n },\n {\n id: 'tile-my-actions',\n componentType: TileMyActionsComponent,\n },\n ],\n layout: {\n singleColumn: {\n tiles: [\n {\n id: 'tile-updates',\n isCollapsed: false,\n },\n {\n id: 'tile-my-actions',\n isCollapsed: false,\n },\n ],\n },\n multiColumn: [\n {\n tiles: [\n {\n id: 'tile-updates',\n isCollapsed: false,\n },\n ],\n },\n {\n tiles: [\n {\n id: 'tile-my-actions',\n isCollapsed: false,\n },\n ],\n },\n ],\n },\n };\n}\n","<sky-tile-dashboard [(config)]=\"dashboardConfig\" />\n","import { Component } from '@angular/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyPageModule, SkyRecentLink } from '@skyux/pages';\n\nimport { HomePageContentComponent } from './home-page-content.component';\n\n@Component({\n selector: 'app-pages-page-home-page-blocks-layout-example',\n templateUrl: './example.component.html',\n imports: [HomePageContentComponent, SkyIconModule, SkyPageModule],\n})\nexport class PagesPageHomePageBlocksLayoutExampleComponent {\n protected readonly recentLinks: SkyRecentLink[] = [\n {\n label: 'Gift Management',\n permalink: { url: '' },\n lastAccessed: new Date(2024, 1, 1),\n },\n {\n label: 'Reporting',\n permalink: { url: '' },\n lastAccessed: new Date(2024, 1, 2),\n },\n ];\n}\n","<sky-page layout=\"blocks\">\n <sky-page-header pageTitle=\"Home\">\n <sky-page-header-actions>\n <button type=\"button\" class=\"sky-btn sky-btn-default\">\n <sky-icon icon=\"add\" /> New\n </button>\n </sky-page-header-actions>\n </sky-page-header>\n <sky-page-content>\n <app-home-page-content />\n </sky-page-content>\n\n <sky-page-links>\n <sky-link-list-recently-accessed [recentLinks]=\"recentLinks\" />\n <sky-link-list headingText=\"Resources\">\n <sky-link-list-item>\n <a href=\"#\">Help</a>\n </sky-link-list-item>\n <sky-link-list-item>\n <a href=\"#\">Support</a>\n </sky-link-list-item>\n <sky-link-list-item>\n <a href=\"#\">Training</a>\n </sky-link-list-item>\n </sky-link-list>\n </sky-page-links>\n</sky-page>\n","import { Component } from '@angular/core';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\nimport { ICellRendererParams } from 'ag-grid-community';\n\nimport { Contact } from './contact';\n\n@Component({\n selector: 'app-contacts-grid-context-menu',\n templateUrl: './contact-context-menu.component.html',\n imports: [SkyDropdownModule],\n})\nexport class ContactContextMenuComponent implements ICellRendererAngularComp {\n protected contactName = '';\n\n public agInit(params: ICellRendererParams<Contact>): void {\n this.contactName = params.data?.name ?? '';\n }\n\n public refresh(): boolean {\n return false;\n }\n}\n","<sky-dropdown\n buttonType=\"context-menu\"\n [label]=\"'context menu for ' + contactName\"\n>\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button type=\"button\" [attr.aria-label]=\"'Edit ' + contactName\">\n Edit\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button type=\"button\" [attr.aria-label]=\"'Delete ' + contactName\">\n Delete\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n</sky-dropdown>\n","import { Component, Input, OnInit, inject } from '@angular/core';\nimport { SkyAgGridModule, SkyAgGridService } from '@skyux/ag-grid';\nimport {\n SkyDataManagerModule,\n SkyDataManagerService,\n SkyDataManagerState,\n SkyDataViewConfig,\n} from '@skyux/data-manager';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyKeyInfoModule } from '@skyux/indicators';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport { ColDef, GridOptions, ICellRendererParams } from 'ag-grid-community';\n\nimport { ContactContextMenuComponent } from './contact-context-menu.component';\n\ninterface Contact {\n name: string;\n organization: string;\n emailAddress: string;\n}\n\n@Component({\n selector: 'app-list-page-contacts-grid',\n templateUrl: './list-page-contacts-grid.component.html',\n providers: [SkyDataManagerService],\n imports: [\n AgGridModule,\n SkyAgGridModule,\n SkyDataManagerModule,\n SkyIconModule,\n SkyKeyInfoModule,\n ],\n})\nexport class ListPageContactsGridComponent implements OnInit {\n @Input()\n public contacts: Contact[] = [];\n\n protected gridOptions: GridOptions;\n\n #dataManagerService = inject(SkyDataManagerService);\n #agGridSvc = inject(SkyAgGridService);\n\n #columnDefs: ColDef[] = [\n {\n colId: 'contextMenu',\n headerName: '',\n sortable: false,\n cellRenderer: ContactContextMenuComponent,\n maxWidth: 55,\n },\n {\n colId: 'name',\n field: 'name',\n headerName: 'Name',\n width: 150,\n cellRenderer: (params: ICellRendererParams): string => {\n return `<a href=\"/\">${params.value}</a>`;\n },\n },\n {\n colId: 'organization',\n field: 'organization',\n headerName: 'Organization',\n },\n {\n colId: 'emailAddress',\n field: 'emailAddress',\n headerName: 'Email Address',\n },\n ];\n\n #viewConfig: SkyDataViewConfig = {\n id: 'gridView',\n name: 'Grid View',\n searchEnabled: true,\n columnPickerEnabled: true,\n columnOptions: [\n { id: 'contextMenu', label: 'Context menu', alwaysDisplayed: true },\n { id: 'name', label: 'Name' },\n { id: 'organization', label: 'Organization' },\n { id: 'emailAddress', label: 'Email Address' },\n ],\n };\n\n constructor() {\n this.gridOptions = this.#agGridSvc.getGridOptions({\n gridOptions: {\n columnDefs: this.#columnDefs,\n },\n });\n }\n\n public ngOnInit(): void {\n this.#dataManagerService.initDataManager({\n activeViewId: 'gridView',\n dataManagerConfig: {},\n defaultDataState: new SkyDataManagerState({\n views: [\n {\n viewId: 'gridView',\n displayedColumnIds: [\n 'contextMenu',\n 'name',\n 'organization',\n 'emailAddress',\n ],\n },\n ],\n }),\n });\n\n this.#dataManagerService.initDataView(this.#viewConfig);\n }\n}\n","<sky-data-manager>\n <div class=\"sky-margin-stacked-xs\">\n <sky-data-manager-toolbar>\n <sky-data-manager-toolbar-primary-item>\n <button\n aria-label=\"New contact\"\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n >\n <sky-icon icon=\"add\" />\n New\n </button>\n </sky-data-manager-toolbar-primary-item>\n </sky-data-manager-toolbar>\n </div>\n <div class=\"sky-margin-stacked-sm\">\n <sky-key-info layout=\"horizontal\" class=\"sky-padding-horizontal-sm\">\n <sky-key-info-value class=\"sky-font-display-4\">\n {{ contacts.length }}\n </sky-key-info-value>\n <sky-key-info-label> Contacts </sky-key-info-label>\n </sky-key-info>\n </div>\n <sky-data-view skyAgGridDataManagerAdapter viewId=\"gridView\">\n <sky-ag-grid-wrapper>\n <ag-grid-angular [gridOptions]=\"gridOptions\" [rowData]=\"contacts\" />\n </sky-ag-grid-wrapper>\n </sky-data-view>\n</sky-data-manager>\n","import { Component } from '@angular/core';\nimport { SkyTabIndex, SkyTabsModule } from '@skyux/tabs';\n\nimport { Contact } from './contact';\nimport { ListPageContactsGridComponent } from './list-page-contacts-grid.component';\n\n@Component({\n selector: 'app-list-page-content',\n templateUrl: './list-page-content.component.html',\n imports: [ListPageContactsGridComponent, SkyTabsModule],\n})\nexport class ListPageContentComponent {\n protected activeTabIndex: SkyTabIndex = 0;\n\n protected myContacts: Contact[] = [\n {\n name: 'Wonda Lumpkin',\n organization: 'Riverfront College of the Arts',\n emailAddress: 'wlumpkin@yahoo.com',\n },\n {\n name: 'Eliza Vanhorn',\n organization: 'Summit School of the Arts',\n emailAddress: 'evanhorn@outlook.com',\n },\n {\n name: 'Ed Sipes',\n organization: 'Reflections Middle School',\n emailAddress: 'esipes@yahoo.com',\n },\n {\n name: 'Elwood Farris',\n organization: 'Sandy Lagoon College',\n emailAddress: 'elfarris@gmail.com',\n },\n {\n name: 'Cristen Sizemore',\n organization: 'Grafton Vision Health',\n emailAddress: 'cristen.sizemore@aol.com',\n },\n {\n name: 'Latrice Ashmore',\n organization: 'Food Bank of Rapid City',\n emailAddress: 'lashmore@gmail.com',\n },\n ];\n\n protected allContacts = [\n ...this.myContacts,\n {\n name: 'Kanesha Hutto',\n organization: 'Los Angeles College of the Arts',\n emailAddress: 'khutto@yahoo.com',\n },\n {\n name: 'Kristeen Lunsford',\n organization: 'Food Bank of Los Angeles',\n emailAddress: 'kristeen.lunsford@yahoo.com',\n },\n {\n name: 'Barbara Durr',\n organization: 'Riverfront Middle School',\n emailAddress: 'bdurr@gmail.com',\n },\n {\n name: 'Ilene Woo',\n organization: 'Rapid City High School',\n emailAddress: 'ilene.woo@aol.com',\n },\n {\n name: 'Darcel Lenz',\n organization: 'Riverfront College of the Arts',\n emailAddress: 'dlenz@yahoo.com',\n },\n ];\n}\n","<sky-tabset [(active)]=\"activeTabIndex\">\n <sky-tab tabHeading=\"My contacts\" layout=\"list\">\n @if (activeTabIndex === 0) {\n <app-list-page-contacts-grid [contacts]=\"myContacts\" />\n }\n </sky-tab>\n <sky-tab tabHeading=\"All contacts\" layout=\"list\">\n @if (activeTabIndex === 1) {\n <app-list-page-contacts-grid [contacts]=\"allContacts\" />\n }\n </sky-tab>\n</sky-tabset>\n","import { Component } from '@angular/core';\nimport { SkyPageModule } from '@skyux/pages';\n\nimport { ListPageContentComponent } from './list-page-content.component';\n\n@Component({\n selector: 'app-pages-page-list-page-tabs-layout-example',\n templateUrl: './example.component.html',\n imports: [ListPageContentComponent, SkyPageModule],\n})\nexport class PagesPageListPageTabsLayoutExampleComponent {}\n","<sky-page layout=\"tabs\" helpKey=\"example-help\">\n <sky-page-header pageTitle=\"Contacts\" />\n <sky-page-content>\n <app-list-page-content />\n </sky-page-content>\n</sky-page>\n","import { Component } from '@angular/core';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\nimport { ICellRendererParams } from 'ag-grid-community';\n\nimport { Item } from './item';\n\n@Component({\n selector: 'app-dashboards-grid-context-menu',\n templateUrl: './dashboards-grid-context-menu.component.html',\n imports: [SkyDropdownModule],\n})\nexport class DashboardGridContextMenuComponent\n implements ICellRendererAngularComp\n{\n protected dashboardName = '';\n\n public agInit(params: ICellRendererParams<Item>): void {\n this.dashboardName = params.data?.dashboard ?? '';\n }\n\n public refresh(): boolean {\n return false;\n }\n}\n","<sky-dropdown\n buttonType=\"context-menu\"\n [label]=\"'context menu for ' + dashboardName\"\n>\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button type=\"button\" [attr.aria-label]=\"'Edit ' + dashboardName\">\n Edit\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button type=\"button\" [attr.aria-label]=\"'Copy ' + dashboardName\">\n Copy\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button type=\"button\" [attr.aria-label]=\"'Delete ' + dashboardName\">\n Delete\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n</sky-dropdown>\n","import { Component, OnInit, inject } from '@angular/core';\nimport { SkyAgGridModule, SkyAgGridService } from '@skyux/ag-grid';\nimport {\n SkyDataManagerModule,\n SkyDataManagerService,\n SkyDataManagerState,\n SkyDataViewConfig,\n} from '@skyux/data-manager';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyKeyInfoModule } from '@skyux/indicators';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport { ColDef, GridOptions, ICellRendererParams } from 'ag-grid-community';\n\nimport { DashboardGridContextMenuComponent } from './dashboards-grid-context-menu.component';\nimport { Item } from './item';\n\n@Component({\n selector: 'app-list-page-content',\n templateUrl: './list-page-content.component.html',\n providers: [SkyDataManagerService],\n imports: [\n AgGridModule,\n SkyAgGridModule,\n SkyDataManagerModule,\n SkyIconModule,\n SkyKeyInfoModule,\n ],\n})\nexport class ListPageContentComponent implements OnInit {\n protected items: Item[] = [\n {\n dashboard: 'Cash Flow Tracker',\n name: 'Kanesha Hutto',\n lastUpdated: '06/21/2023',\n },\n {\n dashboard: 'Accounts Receivable Dashboard',\n name: 'Kristeen Lunsford',\n lastUpdated: '06/30/2023',\n },\n {\n dashboard: 'Accounts Payable Dashboard',\n name: 'Darcel Lenz',\n lastUpdated: '04/20/2023',\n },\n {\n dashboard: 'Budget vs. Actual',\n name: 'Barbara Durr',\n lastUpdated: '12/04/2023',\n },\n {\n dashboard: 'Balance Sheet - New',\n name: 'Ilene Woo',\n lastUpdated: '12/20/2023',\n },\n {\n dashboard: 'Debt Management',\n name: 'Tonja Sanderson',\n lastUpdated: '09/10/2023',\n },\n ];\n\n protected gridOptions: GridOptions;\n\n #columnDefs: ColDef[] = [\n {\n colId: 'contextMenu',\n headerName: '',\n sortable: false,\n cellRenderer: DashboardGridContextMenuComponent,\n maxWidth: 55,\n },\n {\n colId: 'dashboard',\n field: 'dashboard',\n headerName: 'Name',\n width: 150,\n cellRenderer: (params: ICellRendererParams): string => {\n return `<a href=\"/\">${params.value}</a>`;\n },\n },\n {\n colId: 'name',\n field: 'name',\n headerName: 'Created By',\n },\n {\n colId: 'lastUpdated',\n field: 'lastUpdated',\n headerName: 'Last Updated',\n },\n ];\n\n #viewConfig: SkyDataViewConfig = {\n id: 'gridView',\n name: 'Grid View',\n searchEnabled: true,\n };\n\n readonly #dataManagerService = inject(SkyDataManagerService);\n readonly #agGridSvc = inject(SkyAgGridService);\n\n constructor() {\n this.gridOptions = this.#agGridSvc.getGridOptions({\n gridOptions: {\n columnDefs: this.#columnDefs,\n },\n });\n }\n\n public ngOnInit(): void {\n this.#dataManagerService.initDataManager({\n activeViewId: 'gridView',\n dataManagerConfig: {},\n defaultDataState: new SkyDataManagerState({\n views: [\n {\n viewId: 'gridView',\n displayedColumnIds: [\n 'contextMenu',\n 'dashboard',\n 'name',\n 'lastUpdated',\n ],\n },\n ],\n }),\n });\n\n this.#dataManagerService.initDataView(this.#viewConfig);\n }\n}\n","<sky-data-manager>\n <div class=\"sky-margin-stacked-xs\">\n <sky-data-manager-toolbar>\n <sky-data-manager-toolbar-primary-item>\n <button\n aria-label=\"New dashboard\"\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n >\n <sky-icon icon=\"add\" />\n New\n </button>\n </sky-data-manager-toolbar-primary-item>\n </sky-data-manager-toolbar>\n </div>\n <div class=\"sky-margin-stacked-sm\">\n <sky-key-info class=\"sky-padding-horizontal-sm\" layout=\"horizontal\">\n <sky-key-info-value class=\"sky-font-display-4\">\n {{ items.length }}\n </sky-key-info-value>\n <sky-key-info-label> Dashboards </sky-key-info-label>\n </sky-key-info>\n </div>\n <sky-data-view skyAgGridDataManagerAdapter viewId=\"gridView\">\n <sky-ag-grid-wrapper>\n <ag-grid-angular [gridOptions]=\"gridOptions\" [rowData]=\"items\" />\n </sky-ag-grid-wrapper>\n </sky-data-view>\n</sky-data-manager>\n","import { Component } from '@angular/core';\nimport { SkyPageModule } from '@skyux/pages';\n\nimport { ListPageContentComponent } from './list-page-content.component';\n\n@Component({\n selector: 'app-pages-page-list-page-list-layout-example',\n templateUrl: './example.component.html',\n imports: [ListPageContentComponent, SkyPageModule],\n})\nexport class PagesPageListPageListLayoutExampleComponent {}\n","<sky-page layout=\"list\" helpKey=\"example-help\">\n <sky-page-header pageTitle=\"Dashboards\" />\n <sky-page-content>\n <app-list-page-content />\n </sky-page-content>\n</sky-page>\n","import { CommonModule } from '@angular/common';\nimport { Component } from '@angular/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyKeyInfoModule } from '@skyux/indicators';\nimport {\n SkyBoxModule,\n SkyDescriptionListModule,\n SkyFluidGridModule,\n} from '@skyux/layout';\nimport { SkyRepeaterModule } from '@skyux/lists';\n\n@Component({\n selector: 'app-record-page-content',\n templateUrl: './record-page-content.component.html',\n styleUrls: ['./record-page-content.component.scss'],\n imports: [\n CommonModule,\n SkyBoxModule,\n SkyDescriptionListModule,\n SkyFluidGridModule,\n SkyIconModule,\n SkyKeyInfoModule,\n SkyRepeaterModule,\n ],\n})\nexport class RecordPageContentComponent {\n protected recordDetails = [\n {\n detail: 'Designation',\n info: 'General operating',\n },\n {\n detail: 'Source',\n info: 'Online donation form',\n },\n {\n detail: 'Status',\n info: 'Active',\n },\n {\n detail: 'Due date',\n info: '12/12/2023',\n },\n {\n detail: 'Create date',\n info: '01/05/2023',\n },\n {\n detail: 'Frequency',\n info: 'Quarterly',\n },\n ];\n\n protected actualPayments = [\n {\n category: 'Amount',\n value: '$845.00',\n },\n {\n category: 'Assigned',\n value: '$800.00',\n },\n {\n category: 'Applied',\n value: '$800.00',\n },\n {\n category: 'Payments',\n value: 25,\n },\n ];\n\n protected projectedPayments = [\n {\n category: 'Amount',\n value: '$0',\n },\n {\n category: 'Line items',\n value: 0,\n },\n ];\n\n protected recentActivity = [\n {\n activity: '$250.00 payment processed successfully.',\n date: '07/01/2023 12:02 am',\n },\n {\n activity: '$150.00 payment processed successfully.',\n date: '06/15/2023 12:02 am',\n },\n {\n activity: '$250.00 payment processed successfully.',\n date: '04/01/2023 12:02 am',\n },\n ];\n}\n","<sky-fluid-grid gutterSize=\"medium\" [disableMargin]=\"true\">\n <sky-row>\n <sky-column [screenMedium]=\"4\" [screenSmall]=\"12\">\n <sky-box class=\"sky-margin-stacked-xl\" headingText=\"Details\">\n <sky-box-controls>\n <button\n aria-label=\"Edit button for details\"\n class=\"sky-btn sky-btn-icon-borderless\"\n type=\"button\"\n >\n <sky-icon icon=\"edit\" />\n </button>\n </sky-box-controls>\n <sky-box-content>\n <sky-description-list mode=\"vertical\">\n @for (recordDetail of recordDetails; track recordDetail) {\n <sky-description-list-content>\n <sky-description-list-term>\n {{ recordDetail.detail }}\n </sky-description-list-term>\n <sky-description-list-description>\n {{ recordDetail.info }}\n </sky-description-list-description>\n </sky-description-list-content>\n }\n </sky-description-list>\n </sky-box-content>\n </sky-box>\n </sky-column>\n <sky-column [screenMedium]=\"4\" [screenSmall]=\"12\">\n <sky-box class=\"sky-margin-stacked-xl\" headingText=\"Payments\">\n <sky-box-content>\n <div class=\"box-2-content\">\n <div class=\"box-2-actuals\">\n <h3 class=\"sky-font-heading-4\">Actuals</h3>\n @for (actual of actualPayments; track actual; let i = $index) {\n <sky-key-info\n [ngClass]=\"{\n 'sky-margin-stacked-lg': i < actualPayments.length - 1\n }\"\n >\n <sky-key-info-value class=\"sky-font-display-3\">\n {{ actual.value }}\n </sky-key-info-value>\n <sky-key-info-label>{{ actual.category }}</sky-key-info-label>\n </sky-key-info>\n }\n </div>\n <div class=\"box-2-projected\">\n <h3 class=\"sky-font-heading-4\">Projected</h3>\n @for (\n projected of projectedPayments;\n track projected;\n let i = $index\n ) {\n <sky-key-info\n [ngClass]=\"{\n 'sky-margin-stacked-lg': i < projectedPayments.length - 1\n }\"\n >\n <sky-key-info-value class=\"sky-font-display-3\">\n {{ projected.value }}\n </sky-key-info-value>\n <sky-key-info-label>\n {{ projected.category }}\n </sky-key-info-label>\n </sky-key-info>\n }\n </div>\n </div>\n </sky-box-content>\n </sky-box>\n </sky-column>\n <sky-column [screenMedium]=\"4\" [screenSmall]=\"12\">\n <sky-box headingText=\"Recent activity\">\n <sky-box-content>\n <sky-repeater>\n @for (activity of recentActivity; track activity) {\n <sky-repeater-item>\n <sky-repeater-item-content>\n <div class=\"sky-margin-stacked-xs\">\n {{ activity.activity }}\n </div>\n <div class=\"sky-font-deemphasized\">{{ activity.date }}</div>\n </sky-repeater-item-content>\n </sky-repeater-item>\n }\n </sky-repeater>\n </sky-box-content>\n </sky-box>\n </sky-column>\n </sky-row>\n</sky-fluid-grid>\n","import { Component } from '@angular/core';\nimport { SkyPageModule } from '@skyux/pages';\n\nimport { RecordPageContentComponent } from './record-page-content.component';\n\n@Component({\n selector: 'app-pages-page-record-page-blocks-layout-example',\n templateUrl: './example.component.html',\n imports: [RecordPageContentComponent, SkyPageModule],\n})\nexport class PagesPageRecordPageBlocksLayoutExampleComponent {\n protected readonly recentLinks = [\n {\n label: 'Gift Management',\n permalink: { url: '' },\n lastAccessed: new Date(2024, 1, 1),\n },\n {\n label: 'Reporting',\n permalink: { url: '' },\n lastAccessed: new Date(2024, 1, 2),\n },\n ];\n}\n","<sky-page layout=\"blocks\" helpKey=\"example-help\">\n <sky-page-header\n pageTitle=\"$500 pledge\"\n [parentLink]=\"{\n label: 'Pledges',\n permalink: {\n route: {\n commands: ['/']\n }\n }\n }\"\n />\n <sky-page-content>\n <app-record-page-content />\n </sky-page-content>\n <sky-page-links>\n <sky-link-list-recently-accessed [recentLinks]=\"recentLinks\" />\n <sky-link-list headingText=\"Related links\">\n <sky-link-list-item>\n <a href=\"#\">Analysis</a>\n </sky-link-list-item>\n <sky-link-list-item>\n <a href=\"#\">Tools</a>\n </sky-link-list-item>\n <sky-link-list-item>\n <button type=\"button\" class=\"sky-btn-link-inline\">Settings</button>\n </sky-link-list-item>\n </sky-link-list>\n </sky-page-links>\n</sky-page>\n","import { Component } from '@angular/core';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\nimport { ICellRendererAngularComp } from 'ag-grid-angular';\nimport { ICellRendererParams } from 'ag-grid-community';\n\nimport { Attachment } from './attachment';\n\n@Component({\n selector: 'app-attachments-grid-context-menu',\n templateUrl: './attachments-grid-context-menu.component.html',\n imports: [SkyDropdownModule],\n})\nexport class AttachmentsGridContextMenuComponent\n implements ICellRendererAngularComp\n{\n protected attachmentName = '';\n\n public agInit(params: ICellRendererParams<Attachment>): void {\n this.attachmentName = params.data?.name ?? '';\n }\n\n public refresh(): boolean {\n return false;\n }\n}\n","<sky-dropdown\n buttonType=\"context-menu\"\n [label]=\"'context menu for ' + attachmentName\"\n>\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button type=\"button\" [attr.aria-label]=\"'Edit ' + attachmentName\">\n Edit\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button type=\"button\" [attr.aria-label]=\"'Delete ' + attachmentName\">\n Delete\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n</sky-dropdown>\n","import { Component, OnInit, inject } from '@angular/core';\nimport { SkyAgGridModule, SkyAgGridService } from '@skyux/ag-grid';\nimport {\n SkyDataManagerModule,\n SkyDataManagerService,\n SkyDataManagerState,\n SkyDataViewConfig,\n} from '@skyux/data-manager';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyKeyInfoModule } from '@skyux/indicators';\n\nimport { AgGridModule } from 'ag-grid-angular';\nimport { ColDef, GridOptions, ICellRendererParams } from 'ag-grid-community';\n\nimport { Attachment } from './attachment';\nimport { AttachmentsGridContextMenuComponent } from './attachments-grid-context-menu.component';\n\n@Component({\n selector: 'app-record-page-attachments-tab',\n templateUrl: './record-page-attachments-tab.component.html',\n providers: [SkyDataManagerService],\n imports: [\n AgGridModule,\n SkyAgGridModule,\n SkyDataManagerModule,\n SkyKeyInfoModule,\n SkyIconModule,\n ],\n})\nexport class RecordPageAttachmentsTabComponent implements OnInit {\n protected items: Attachment[] = [\n {\n name: 'Agreement.pdf',\n description: 'Cardholder agreement',\n size: '10 KB',\n dateAdded: '01/28/2023',\n },\n {\n name: 'Appendix.pdf',\n description: 'Updated terms 2023',\n size: '25 KB',\n dateAdded: '05/05/2023',\n },\n ];\n protected gridOptions: GridOptions;\n\n #dataManagerService = inject(SkyDataManagerService);\n #agGridSvc = inject(SkyAgGridService);\n\n #columnDefs: ColDef[] = [\n {\n colId: 'contextMenu',\n headerName: '',\n sortable: false,\n cellRenderer: AttachmentsGridContextMenuComponent,\n maxWidth: 55,\n },\n {\n colId: 'name',\n field: 'name',\n headerName: 'Name',\n width: 150,\n cellRenderer: (params: ICellRendererParams): string => {\n return `<a href=\"/\">${params.value}</a>`;\n },\n },\n {\n colId: 'description',\n field: 'description',\n headerName: 'Description',\n },\n {\n colId: 'size',\n field: 'size',\n headerName: 'Size',\n },\n {\n colId: 'dateAdded',\n field: 'dateAdded',\n headerName: 'Date Added',\n },\n ];\n\n #viewConfig: SkyDataViewConfig = {\n id: 'gridView',\n name: 'Grid View',\n searchEnabled: true,\n };\n\n constructor() {\n this.gridOptions = this.#agGridSvc.getGridOptions({\n gridOptions: {\n columnDefs: this.#columnDefs,\n },\n });\n }\n\n public ngOnInit(): void {\n this.#dataManagerService.initDataManager({\n activeViewId: 'gridView',\n dataManagerConfig: {},\n defaultDataState: new SkyDataManagerState({\n views: [\n {\n viewId: 'gridView',\n displayedColumnIds: [\n 'contextMenu',\n 'name',\n 'description',\n 'size',\n 'dateAdded',\n ],\n },\n ],\n }),\n });\n\n this.#dataManagerService.initDataView(this.#viewConfig);\n }\n}\n","<sky-data-manager>\n <div class=\"sky-margin-stacked-xs\">\n <sky-data-manager-toolbar>\n <sky-data-manager-toolbar-primary-item>\n <button\n aria-label=\"New attachment\"\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n >\n <sky-icon icon=\"add\" />\n New\n </button>\n </sky-data-manager-toolbar-primary-item>\n </sky-data-manager-toolbar>\n </div>\n <div class=\"sky-margin-stacked-sm\">\n <sky-key-info layout=\"horizontal\" class=\"sky-padding-horizontal-sm\">\n <sky-key-info-value class=\"sky-font-display-4\">\n {{ items.length }}\n </sky-key-info-value>\n <sky-key-info-label> Attachments </sky-key-info-label>\n </sky-key-info>\n </div>\n <sky-data-view skyAgGridDataManagerAdapter viewId=\"gridView\">\n <sky-ag-grid-wrapper>\n <ag-grid-angular [gridOptions]=\"gridOptions\" [rowData]=\"items\" />\n </sky-ag-grid-wrapper>\n </sky-data-view>\n</sky-data-manager>\n","import { Component } from '@angular/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyKeyInfoModule } from '@skyux/indicators';\nimport { SkyToolbarModule } from '@skyux/layout';\nimport { SkyRepeaterModule, SkySortModule } from '@skyux/lists';\nimport { SkySearchModule } from '@skyux/lookup';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\n@Component({\n selector: 'app-record-page-notes-tab',\n templateUrl: './record-page-notes-tab.component.html',\n imports: [\n SkyDropdownModule,\n SkyIconModule,\n SkyKeyInfoModule,\n SkyRepeaterModule,\n SkySearchModule,\n SkySortModule,\n SkyToolbarModule,\n ],\n})\nexport class RecordPageNotesTabComponent {\n protected notes = [\n {\n noteNumber: 1,\n content: 'Attended our gala last year and had a great time.',\n date: '11/17/2024',\n },\n {\n noteNumber: 2,\n content:\n 'Is a business owner and has a lot of connections in the community.',\n date: '10/11/2024',\n },\n ];\n}\n","<div class=\"sky-margin-stacked-xs\">\n <sky-toolbar>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n aria-label=\"New note\"\n >\n <sky-icon icon=\"add\" />\n New\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <sky-sort [showButtonText]=\"true\">\n <sky-sort-item>\n <span aria-label=\"Sort notes by date created (newest first)\">\n Date created (newest first)\n </span>\n </sky-sort-item>\n <sky-sort-item>\n <span aria-label=\"Sort notes by date created (oldest first)\">\n Date created (oldest first)\n </span>\n </sky-sort-item>\n </sky-sort>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n aria-label=\"Export notes\"\n >\n <sky-icon icon=\"xls-file\" />\n Export\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <sky-search placeholderText=\"Find in notes\" />\n </sky-toolbar-item>\n </sky-toolbar>\n</div>\n<div class=\"sky-margin-stacked-sm\">\n <sky-key-info layout=\"horizontal\">\n <sky-key-info-value class=\"sky-font-display-4\">\n {{ notes.length }}\n </sky-key-info-value>\n <sky-key-info-label> Notes </sky-key-info-label>\n </sky-key-info>\n</div>\n<sky-repeater>\n @for (note of notes; track note) {\n <sky-repeater-item>\n <sky-repeater-item-context-menu>\n <sky-dropdown\n buttonType=\"context-menu\"\n [label]=\"\n 'Context menu for note ' + note.noteNumber + ' from ' + note.date\n \"\n >\n <sky-dropdown-menu>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"\n 'Edit note ' + note.noteNumber + ' from ' + note.date\n \"\n >\n Edit\n </button>\n </sky-dropdown-item>\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.aria-label]=\"\n 'Delete note ' + note.noteNumber + ' from ' + note.date\n \"\n >\n Delete\n </button>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n </sky-repeater-item-context-menu>\n <sky-repeater-item-content>\n <div class=\"sky-margin-stacked-xs\">\n {{ note.content }}\n </div>\n <div class=\"sky-font-deemphasized\">{{ note.date }}</div>\n </sky-repeater-item-content>\n </sky-repeater-item>\n }\n</sky-repeater>\n","import { CommonModule } from '@angular/common';\nimport { Component } from '@angular/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyKeyInfoModule } from '@skyux/indicators';\nimport {\n SkyBoxModule,\n SkyDescriptionListModule,\n SkyFluidGridModule,\n} from '@skyux/layout';\nimport { SkyRepeaterModule } from '@skyux/lists';\n\nimport { Detail } from './detail';\n\n@Component({\n selector: 'app-record-page-overview-tab',\n templateUrl: './record-page-overview-tab.component.html',\n styleUrls: ['./record-page-overview-tab.component.scss'],\n imports: [\n CommonModule,\n SkyBoxModule,\n SkyDescriptionListModule,\n SkyFluidGridModule,\n SkyIconModule,\n SkyKeyInfoModule,\n SkyRepeaterModule,\n ],\n})\nexport class RecordPageOverviewTabComponent {\n protected recordDetails: Detail[] = [\n {\n detail: 'Designation',\n info: 'General operating',\n },\n {\n detail: 'Source',\n info: 'Online donation form',\n },\n {\n detail: 'Status',\n info: 'Active',\n },\n {\n detail: 'Due date',\n info: '12/12/2023',\n },\n {\n detail: 'Create date',\n info: '01/05/2023',\n },\n {\n detail: 'Frequency',\n info: 'Quarterly',\n },\n ];\n\n protected actualPayments = [\n {\n category: 'Amount',\n value: '$845.00',\n },\n {\n category: 'Assigned',\n value: '$800.00',\n },\n {\n category: 'Applied',\n value: '$800.00',\n },\n {\n category: 'Payments',\n value: 25,\n },\n ];\n\n protected projectedPayments = [\n {\n category: 'Amount',\n value: '$0',\n },\n {\n category: 'Line items',\n value: 0,\n },\n ];\n\n protected recentActivity = [\n {\n activity: '$250.00 payment processed successfully.',\n date: '07/01/2023 12:02 am',\n },\n {\n activity: '$150.00 payment processed successfully.',\n date: '06/15/2023 12:02 am',\n },\n {\n activity: '$250.00 payment processed successfully.',\n date: '04/01/2023 12:02 am',\n },\n ];\n}\n","<sky-fluid-grid gutterSize=\"medium\" [disableMargin]=\"true\">\n <sky-row>\n <sky-column [screenSmall]=\"4\" [screenXSmall]=\"12\">\n <sky-box class=\"sky-margin-stacked-xl\" headingText=\"Details\">\n <sky-box-controls>\n <button\n aria-label=\"Edit button for details\"\n class=\"sky-btn sky-btn-icon-borderless\"\n type=\"button\"\n >\n <sky-icon icon=\"edit\" />\n </button>\n </sky-box-controls>\n <sky-box-content>\n <sky-description-list mode=\"vertical\">\n @for (recordDetail of recordDetails; track recordDetail) {\n <sky-description-list-content>\n <sky-description-list-term>\n {{ recordDetail.detail }}\n </sky-description-list-term>\n <sky-description-list-description>\n {{ recordDetail.info }}\n </sky-description-list-description>\n </sky-description-list-content>\n }\n </sky-description-list>\n </sky-box-content>\n </sky-box>\n </sky-column>\n <sky-column [screenSmall]=\"4\" [screenXSmall]=\"12\">\n <sky-box class=\"sky-margin-stacked-xl\" headingText=\"Payments\">\n <sky-box-content>\n <div class=\"box-2-content\">\n <div class=\"box-2-actuals\">\n <h3 class=\"sky-font-heading-4\">Actuals</h3>\n @for (actual of actualPayments; track actual; let i = $index) {\n <sky-key-info\n [ngClass]=\"{\n 'sky-margin-stacked-lg': i < actualPayments.length - 1\n }\"\n >\n <sky-key-info-value class=\"sky-font-display-3\">\n {{ actual.value }}\n </sky-key-info-value>\n <sky-key-info-label>{{ actual.category }}</sky-key-info-label>\n </sky-key-info>\n }\n </div>\n <div class=\"box-2-projected\">\n <h3 class=\"sky-font-heading-4\">Projected</h3>\n @for (\n projected of projectedPayments;\n track projected;\n let i = $index\n ) {\n <sky-key-info\n [ngClass]=\"{\n 'sky-margin-stacked-lg': i < projectedPayments.length - 1\n }\"\n >\n <sky-key-info-value class=\"sky-font-display-3\">\n {{ projected.value }}\n </sky-key-info-value>\n <sky-key-info-label>\n {{ projected.category }}\n </sky-key-info-label>\n </sky-key-info>\n }\n </div>\n </div>\n </sky-box-content>\n </sky-box>\n </sky-column>\n <sky-column [screenSmall]=\"4\" [screenXSmall]=\"12\">\n <sky-box headingText=\"Recent activity\">\n <sky-box-content>\n <sky-repeater>\n @for (activity of recentActivity; track activity) {\n <sky-repeater-item>\n <sky-repeater-item-content>\n <div class=\"sky-margin-stacked-xs\">\n {{ activity.activity }}\n </div>\n <div class=\"sky-font-deemphasized\">{{ activity.date }}</div>\n </sky-repeater-item-content>\n </sky-repeater-item>\n }\n </sky-repeater>\n </sky-box-content>\n </sky-box>\n </sky-column>\n </sky-row>\n</sky-fluid-grid>\n","import { Component } from '@angular/core';\nimport { SkyTabIndex, SkyTabsModule } from '@skyux/tabs';\n\nimport { RecordPageAttachmentsTabComponent } from './record-page-attachments-tab.component';\nimport { RecordPageNotesTabComponent } from './record-page-notes-tab.component';\nimport { RecordPageOverviewTabComponent } from './record-page-overview-tab.component';\n\n@Component({\n selector: 'app-record-page-content',\n templateUrl: './record-page-content.component.html',\n imports: [\n RecordPageAttachmentsTabComponent,\n RecordPageNotesTabComponent,\n RecordPageOverviewTabComponent,\n SkyTabsModule,\n ],\n})\nexport class RecordPageContentComponent {\n protected activeTabIndex: SkyTabIndex = 0;\n}\n","<sky-tabset [(active)]=\"activeTabIndex\">\n <sky-tab tabHeading=\"Overview\" layout=\"blocks\">\n <app-record-page-overview-tab />\n </sky-tab>\n <sky-tab tabHeading=\"Notes\" layout=\"list\">\n <app-record-page-notes-tab />\n </sky-tab>\n <sky-tab tabHeading=\"Attachments\" layout=\"list\">\n @if (activeTabIndex === 2) {\n <app-record-page-attachments-tab />\n }\n </sky-tab>\n</sky-tabset>\n","import { Component } from '@angular/core';\nimport { SkyAvatarModule } from '@skyux/avatar';\nimport { SkyAlertModule, SkyLabelModule } from '@skyux/indicators';\nimport { SkyPageModule } from '@skyux/pages';\n\nimport { RecordPageContentComponent } from './record-page-content.component';\n\n@Component({\n selector: 'app-pages-page-record-page-tabs-layout-example',\n templateUrl: './example.component.html',\n imports: [\n RecordPageContentComponent,\n SkyAlertModule,\n SkyAvatarModule,\n SkyLabelModule,\n SkyPageModule,\n ],\n})\nexport class PagesPageRecordPageTabsLayoutExampleComponent {}\n","<sky-page layout=\"tabs\" helpKey=\"example-help\">\n <sky-page-header pageTitle=\"Charlene Conners\">\n <sky-page-header-alerts>\n <sky-alert alertType=\"warning\" descriptionType=\"warning\">\n Missing phone number for Charlene Conners.\n </sky-alert>\n </sky-page-header-alerts>\n <sky-page-header-avatar>\n <sky-avatar name=\"Charlene Conners\" />\n </sky-page-header-avatar>\n <sky-page-header-details>\n <sky-label labelType=\"info\" descriptionType=\"important-info\">\n VIP\n </sky-label>\n </sky-page-header-details>\n <sky-page-header-actions>\n <button class=\"sky-btn sky-btn-default\" type=\"button\">\n Email contact\n </button>\n <button class=\"sky-btn sky-btn-default\" type=\"button\">\n Add to my contacts\n </button>\n </sky-page-header-actions>\n </sky-page-header>\n <sky-page-content>\n <app-record-page-content />\n </sky-page-content>\n</sky-page>\n","import { Component, inject } from '@angular/core';\nimport { FormBuilder, FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { SkySummaryActionBarModule } from '@skyux/action-bars';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyDescriptionListModule } from '@skyux/layout';\nimport { SkyRepeaterModule } from '@skyux/lists';\nimport { SkyConfirmService, SkyConfirmType } from '@skyux/modals';\nimport {\n SkySplitViewMessage,\n SkySplitViewMessageType,\n SkySplitViewModule,\n} from '@skyux/split-view';\n\nimport { Subject } from 'rxjs';\n\ninterface WorkspaceItem {\n id: number;\n amount: number;\n date: string;\n vendor: string;\n receiptImage: string;\n approvedAmount: number;\n comments: string;\n}\n\n@Component({\n selector: 'app-split-view-page-content',\n templateUrl: './split-view-page-content.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyDescriptionListModule,\n SkyInputBoxModule,\n SkyRepeaterModule,\n SkySplitViewModule,\n SkySummaryActionBarModule,\n ],\n})\nexport class SplitViewPageContentComponent {\n protected set activeIndex(value: number) {\n this.#_activeIndex = value;\n this.activeRecord = this.items[this.#_activeIndex];\n this.#loadFormGroup(this.activeRecord);\n }\n\n protected get activeIndex(): number {\n return this.#_activeIndex;\n }\n\n protected items: WorkspaceItem[] = [\n {\n id: 1,\n amount: 73.19,\n date: '5/13/2020',\n vendor: 'amazon.com',\n receiptImage: 'amzn-office-supply-order-5-13-19.png',\n approvedAmount: 73.19,\n comments: '',\n },\n {\n id: 2,\n amount: 214.12,\n date: '5/14/2020',\n vendor: 'Office Max',\n receiptImage: 'office-max-order.png',\n approvedAmount: 214.12,\n comments: '',\n },\n {\n id: 3,\n amount: 29.99,\n date: '5/14/2020',\n vendor: 'amazon.com',\n receiptImage: 'amzn-office-supply-order-5-14-19.png',\n approvedAmount: 29.99,\n comments: '',\n },\n {\n id: 4,\n amount: 1500,\n date: '5/15/2020',\n vendor: 'Fresh Catering, LLC',\n receiptImage: 'fresh-catering-llc-order.png',\n approvedAmount: 1500,\n comments: '',\n },\n {\n id: 5,\n amount: 456.24,\n date: '5/16/2020',\n vendor: 'Wish',\n receiptImage: 'wish-delivery-order.png',\n approvedAmount: 456.24,\n comments: '',\n },\n {\n id: 6,\n amount: 62.37,\n date: '5/16/2020',\n vendor: 'Staples',\n receiptImage: 'staples-paper-bulk-order.png',\n approvedAmount: 62.37,\n comments: '',\n },\n {\n id: 7,\n amount: 51.84,\n date: '5/17/2020',\n vendor: 'amazon.com',\n receiptImage: 'amzn-office-supply-order-5-17-19.png',\n approvedAmount: 51.84,\n comments: '',\n },\n {\n id: 8,\n amount: 92.55,\n date: '5/18/2020',\n vendor: 'Home Depot',\n receiptImage: 'home-depot-order.png',\n approvedAmount: 0.0,\n comments: '',\n },\n {\n id: 9,\n amount: 38.29,\n date: '5/18/2020',\n vendor: 'Papa Johns',\n receiptImage: 'papa-johns-order.png',\n approvedAmount: 38.29,\n comments: '',\n },\n ];\n\n protected activeRecord = this.items[0];\n protected listWidth: number | undefined;\n protected splitViewStream = new Subject<SkySplitViewMessage>();\n\n protected splitViewDemoForm = inject(FormBuilder).group({\n approvedAmount: [this.activeRecord.approvedAmount],\n comments: [this.activeRecord.comments],\n });\n\n #_activeIndex = 0;\n\n #confirmSvc = inject(SkyConfirmService);\n\n protected onItemClick(index: number): void {\n // Prevent workspace from loading new data if the current workspace form is dirty.\n if (this.splitViewDemoForm.dirty && index !== this.activeIndex) {\n this.#openConfirmModal(index);\n } else {\n this.#loadWorkspace(index);\n }\n }\n\n protected onApprove(): void {\n console.log('Approved clicked!');\n this.#saveForm();\n }\n\n protected onDeny(): void {\n console.log('Denied clicked!');\n }\n\n #loadFormGroup(record: WorkspaceItem): void {\n this.splitViewDemoForm.setValue({\n approvedAmount: record.approvedAmount,\n comments: record.comments,\n });\n }\n\n #loadWorkspace(index: number): void {\n this.activeIndex = index;\n this.#setFocusInWorkspace();\n }\n\n #openConfirmModal(index: number): void {\n this.#confirmSvc\n .open({\n message:\n 'You have unsaved work. Would you like to save it before you change records?',\n type: SkyConfirmType.Custom,\n buttons: [\n {\n action: 'yes',\n text: 'Yes',\n styleType: 'primary',\n },\n {\n action: 'discard',\n text: 'Discard changes',\n styleType: 'link',\n },\n ],\n })\n .closed.subscribe((closeArgs) => {\n if (closeArgs.action === 'yes') {\n this.#saveForm();\n }\n\n this.#loadWorkspace(index);\n });\n }\n\n #saveForm(): void {\n this.activeRecord = Object.assign(\n this.activeRecord,\n this.splitViewDemoForm.value,\n );\n\n this.splitViewDemoForm.markAsPristine();\n }\n\n #setFocusInWorkspace(): void {\n this.splitViewStream.next({\n type: SkySplitViewMessageType.FocusWorkspace,\n });\n }\n}\n","<sky-split-view dock=\"fill\" [messageStream]=\"splitViewStream\">\n <sky-split-view-drawer [ariaLabel]=\"'Transaction list'\" [width]=\"listWidth\">\n <sky-repeater [activeIndex]=\"activeIndex\">\n @for (item of items; track item; let i = $index) {\n <sky-repeater-item\n (click)=\"onItemClick(i)\"\n (keyup.enter)=\"onItemClick(i)\"\n >\n <sky-repeater-item-content>\n {{ item.amount }} <br />\n {{ item.date }} <br />\n {{ item.vendor }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n }\n </sky-repeater>\n </sky-split-view-drawer>\n\n <sky-split-view-workspace ariaLabel=\"Transaction form\">\n <sky-split-view-workspace-content class=\"sky-padding-even-xl\">\n <form [formGroup]=\"splitViewDemoForm\" (ngSubmit)=\"onApprove()\">\n <sky-description-list class=\"sky-margin-stacked-xl\">\n <sky-description-list-content>\n <sky-description-list-term>\n Receipt amount\n </sky-description-list-term>\n <sky-description-list-description>\n {{ activeRecord.amount }}\n </sky-description-list-description>\n </sky-description-list-content>\n <sky-description-list-content>\n <sky-description-list-term> Date </sky-description-list-term>\n <sky-description-list-description>\n {{ activeRecord.date }}\n </sky-description-list-description>\n </sky-description-list-content>\n <sky-description-list-content>\n <sky-description-list-term> Vendor </sky-description-list-term>\n <sky-description-list-description>\n {{ activeRecord.vendor }}\n </sky-description-list-description>\n </sky-description-list-content>\n <sky-description-list-content>\n <sky-description-list-term>\n Receipt image\n </sky-description-list-term>\n <sky-description-list-description>\n {{ activeRecord.receiptImage }}\n </sky-description-list-description>\n </sky-description-list-content>\n </sky-description-list>\n <div>\n <sky-input-box stacked=\"true\" labelText=\"Approved amount\">\n <input\n formControlName=\"approvedAmount\"\n name=\"approvedAmount\"\n type=\"text\"\n />\n </sky-input-box>\n </div>\n\n <div>\n <sky-input-box stacked=\"true\" labelText=\"Comments\">\n <textarea formControlName=\"comments\" name=\"comments\"></textarea>\n </sky-input-box>\n </div>\n </form>\n </sky-split-view-workspace-content>\n <sky-split-view-workspace-footer>\n <sky-summary-action-bar>\n <sky-summary-action-bar-actions>\n <sky-summary-action-bar-primary-action (actionClick)=\"onApprove()\">\n Approve expense\n </sky-summary-action-bar-primary-action>\n <sky-summary-action-bar-secondary-actions>\n <sky-summary-action-bar-secondary-action (actionClick)=\"onDeny()\">\n Deny expense\n </sky-summary-action-bar-secondary-action>\n </sky-summary-action-bar-secondary-actions>\n </sky-summary-action-bar-actions>\n </sky-summary-action-bar>\n </sky-split-view-workspace-footer>\n </sky-split-view-workspace>\n</sky-split-view>\n","import { Component } from '@angular/core';\nimport { SkyAlertModule } from '@skyux/indicators';\nimport { SkyPageModule } from '@skyux/pages';\n\nimport { SplitViewPageContentComponent } from './split-view-page-content.component';\n\n@Component({\n selector: 'app-pages-page-split-view-page-fit-layout-example',\n templateUrl: './example.component.html',\n imports: [SkyAlertModule, SkyPageModule, SplitViewPageContentComponent],\n})\nexport class PagesPageSplitViewPageFitLayoutExampleComponent {}\n","<sky-page layout=\"fit\" helpKey=\"example-help\">\n <sky-page-header\n pageTitle=\"Expenses to approve\"\n [parentLink]=\"{\n label: 'Expenses',\n permalink: {\n route: {\n commands: ['/']\n }\n }\n }\"\n >\n <sky-page-header-alerts>\n <sky-alert alertType=\"warning\" descriptionType=\"warning\">\n There are multiple expense approvals due soon.\n </sky-alert>\n </sky-page-header-alerts>\n <sky-page-header-actions>\n <button class=\"sky-btn sky-btn-default\" type=\"button\">Approve all</button>\n </sky-page-header-actions>\n </sky-page-header>\n <sky-page-content>\n <app-split-view-page-content />\n </sky-page-content>\n</sky-page>\n","import { Component, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyPhoneFieldModule } from '@skyux/phone-field';\n\n@Component({\n selector: 'app-phone-field-basic-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyInputBoxModule,\n SkyPhoneFieldModule,\n ],\n})\nexport class PhoneFieldBasicExampleComponent {\n public phoneForm: FormGroup;\n public phoneControl: FormControl;\n\n #formBuilder = inject(FormBuilder);\n\n constructor() {\n this.phoneControl = this.#formBuilder.control(undefined, {\n validators: Validators.required,\n });\n this.phoneForm = this.#formBuilder.group({\n phoneControl: this.phoneControl,\n });\n }\n}\n","<div class=\"sky-padding-even-lg\">\n <form class=\"phone-field-example\" [formGroup]=\"phoneForm\">\n <sky-input-box\n data-sky-id=\"my-phone-field\"\n helpPopoverTitle=\"How we use your phone number\"\n hintText=\"Enter the phone number where you can be reached before 5 p.m., Monday through Friday.\"\n labelText=\"Phone number\"\n [helpPopoverContent]=\"inlineHelpPopover\"\n >\n <sky-phone-field [defaultCountry]=\"'us'\">\n <input formControlName=\"phoneControl\" skyPhoneFieldInput />\n </sky-phone-field>\n </sky-input-box>\n </form>\n</div>\n\n<ng-template #inlineHelpPopover>\n We use this number for calls and text about your student. We won't use it for\n other purposes.\n <br />\n <br />\n For more information, see our <a>privacy policy</a>.\n</ng-template>\n","import { Component } from '@angular/core';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\ninterface DropdownItem {\n name: string;\n disabled: boolean;\n}\n\n@Component({\n selector: 'app-popovers-dropdown-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyDropdownModule],\n})\nexport class PopoversDropdownBasicExampleComponent {\n protected items: DropdownItem[] = [\n { name: 'Option 1', disabled: false },\n { name: 'Disabled option', disabled: true },\n { name: 'Option 3', disabled: false },\n { name: 'Option 4', disabled: false },\n { name: 'Option 5', disabled: false },\n ];\n\n public actionClicked(action: string): void {\n alert(`You selected ${action}.`);\n }\n}\n","<sky-dropdown data-sky-id=\"dropdown-example\" label=\"Test dropdown\">\n <sky-dropdown-button> Show dropdown </sky-dropdown-button>\n <sky-dropdown-menu>\n @for (item of items; track item) {\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.disabled]=\"item.disabled ? '' : null\"\n (click)=\"actionClicked(item.name)\"\n >\n {{ item.name }}\n </button>\n </sky-dropdown-item>\n }\n </sky-dropdown-menu>\n</sky-dropdown>\n<br />\n<sky-dropdown buttonType=\"context-menu\" label=\"Code example context menu\">\n <sky-dropdown-menu>\n @for (item of items; track item) {\n <sky-dropdown-item>\n <button\n type=\"button\"\n [attr.disabled]=\"item.disabled ? '' : null\"\n (click)=\"actionClicked(item.name)\"\n >\n {{ item.name }}\n </button>\n </sky-dropdown-item>\n }\n </sky-dropdown-menu>\n</sky-dropdown>\n","import { Component } from '@angular/core';\nimport {\n SkyPopoverAlignment,\n SkyPopoverModule,\n SkyPopoverPlacement,\n} from '@skyux/popovers';\n\n@Component({\n selector: 'app-popovers-popover-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyPopoverModule],\n})\nexport class PopoversPopoverBasicExampleComponent {\n public popoverAlignment: SkyPopoverAlignment | undefined;\n public popoverBody = 'This is a popover.';\n public popoverPlacement: SkyPopoverPlacement | undefined;\n public popoverTitle: string | undefined = 'Did you know?';\n}\n","<button\n class=\"sky-btn sky-btn-default sky-margin-inline-sm\"\n data-sky-id=\"popover-example\"\n type=\"button\"\n [skyPopover]=\"myPopover\"\n [skyPopoverAlignment]=\"popoverAlignment\"\n [skyPopoverPlacement]=\"popoverPlacement\"\n>\n Open popover\n</button>\n\n<sky-popover #myPopover [popoverTitle]=\"popoverTitle\">\n {{ popoverBody }}\n</sky-popover>\n","import { Component } from '@angular/core';\nimport { SkyHelpInlineModule } from '@skyux/help-inline';\nimport {\n SkyPopoverMessage,\n SkyPopoverMessageType,\n SkyPopoverModule,\n} from '@skyux/popovers';\n\nimport { Subject } from 'rxjs';\n\n@Component({\n selector: 'app-popovers-popover-programmatic-example',\n templateUrl: './example.component.html',\n imports: [SkyHelpInlineModule, SkyPopoverModule],\n})\nexport class PopoversPopoverProgrammaticExampleComponent {\n protected popoverController = new Subject<SkyPopoverMessage>();\n\n #popoverOpen = false;\n\n protected onPopoverStateChange(isOpen: boolean): void {\n this.#popoverOpen = isOpen;\n }\n\n protected openPopover(): void {\n if (!this.#popoverOpen) {\n this.#sendMessage(SkyPopoverMessageType.Open);\n }\n }\n\n #sendMessage(type: SkyPopoverMessageType): void {\n const message: SkyPopoverMessage = { type };\n this.popoverController.next(message);\n }\n}\n","<sky-help-inline\n ariaLabel=\"Information about Popover using message stream\"\n [skyPopover]=\"myPopover\"\n [skyPopoverMessageStream]=\"popoverController\"\n/>\n\n<button\n class=\"sky-btn sky-btn-default sky-margin-inline-sm\"\n type=\"button\"\n (click)=\"openPopover()\"\n>\n Open popover with message stream\n</button>\n\n<sky-popover\n #myPopover\n (popoverClosed)=\"onPopoverStateChange(false)\"\n (popoverOpened)=\"onPopoverStateChange(true)\"\n>\n This is a popover.\n</sky-popover>\n","import { Component, inject } from '@angular/core';\nimport {\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkySummaryActionBarModule } from '@skyux/action-bars';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyDescriptionListModule } from '@skyux/layout';\nimport { SkyRepeaterModule } from '@skyux/lists';\nimport { SkyConfirmService, SkyConfirmType } from '@skyux/modals';\nimport {\n SkySplitViewMessage,\n SkySplitViewMessageType,\n SkySplitViewModule,\n} from '@skyux/split-view';\n\nimport { Subject } from 'rxjs';\n\nimport { Record } from './record';\n\ninterface DemoForm {\n approvedAmount: FormControl<number>;\n comments: FormControl<string>;\n}\n\n@Component({\n selector: 'app-split-view-basic-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyDescriptionListModule,\n SkyInputBoxModule,\n SkyRepeaterModule,\n SkySplitViewModule,\n SkySummaryActionBarModule,\n ],\n})\nexport class SplitViewBasicExampleComponent {\n protected set activeIndex(value: number) {\n this.#_activeIndex = value;\n this.activeRecord = this.items[this.#_activeIndex];\n this.#loadFormGroup(this.activeRecord);\n }\n\n protected get activeIndex(): number {\n return this.#_activeIndex;\n }\n\n protected items = [\n {\n id: 1,\n amount: 73.19,\n date: '5/13/2020',\n vendor: 'amazon.com',\n receiptImage: 'amzn-office-supply-order-5-13-19.png',\n approvedAmount: 73.19,\n comments: '',\n },\n {\n id: 2,\n amount: 214.12,\n date: '5/14/2020',\n vendor: 'Office Max',\n receiptImage: 'office-max-order.png',\n approvedAmount: 214.12,\n comments: '',\n },\n {\n id: 3,\n amount: 29.99,\n date: '5/14/2020',\n vendor: 'amazon.com',\n receiptImage: 'amzn-office-supply-order-5-14-19.png',\n approvedAmount: 29.99,\n comments: '',\n },\n {\n id: 4,\n amount: 1500,\n date: '5/15/2020',\n vendor: 'Fresh Catering, LLC',\n receiptImage: 'fresh-catering-llc-order.png',\n approvedAmount: 1500,\n comments: '',\n },\n ];\n\n protected activeRecord: Record;\n protected splitViewDemoForm: FormGroup<DemoForm>;\n protected splitViewStream = new Subject<SkySplitViewMessage>();\n\n #_activeIndex = 0;\n\n readonly #confirmSvc = inject(SkyConfirmService);\n\n constructor() {\n // Start with the first item selected.\n this.activeIndex = 0;\n this.activeRecord = this.items[this.activeIndex];\n\n this.splitViewDemoForm = new FormGroup({\n approvedAmount: new FormControl(this.activeRecord.approvedAmount, {\n nonNullable: true,\n }),\n comments: new FormControl(this.activeRecord.comments, {\n nonNullable: true,\n }),\n });\n }\n\n protected onItemClick(index: number): void {\n // Prevent workspace from loading new data if the current workspace form is dirty.\n if (this.splitViewDemoForm.dirty && index !== this.activeIndex) {\n this.#openConfirmModal(index);\n } else {\n this.#loadWorkspace(index);\n }\n }\n\n protected onApprove(): void {\n console.log('Approved clicked!');\n this.#saveForm();\n }\n\n protected onDeny(): void {\n console.log('Denied clicked!');\n }\n\n #loadFormGroup(record: Record): void {\n this.splitViewDemoForm = new FormGroup({\n approvedAmount: new FormControl(record.approvedAmount, {\n nonNullable: true,\n }),\n comments: new FormControl(record.comments, { nonNullable: true }),\n });\n }\n\n #loadWorkspace(index: number): void {\n this.activeIndex = index;\n this.#setFocusInWorkspace();\n }\n\n #openConfirmModal(index: number): void {\n this.#confirmSvc\n .open({\n message:\n 'You have unsaved work. Would you like to save it before you change records?',\n type: SkyConfirmType.Custom,\n buttons: [\n {\n action: 'yes',\n text: 'Yes',\n styleType: 'primary',\n },\n {\n action: 'discard',\n text: 'Discard changes',\n styleType: 'link',\n },\n ],\n })\n .closed.subscribe((closeArgs) => {\n if (closeArgs.action.toLowerCase() === 'yes') {\n this.#saveForm();\n }\n\n this.#loadWorkspace(index);\n });\n }\n\n #saveForm(): void {\n this.activeRecord.approvedAmount =\n this.splitViewDemoForm.value.approvedAmount ?? 0;\n this.activeRecord.comments = this.splitViewDemoForm.value.comments ?? '';\n\n this.splitViewDemoForm.reset(this.splitViewDemoForm.value);\n }\n\n #setFocusInWorkspace(): void {\n const message: SkySplitViewMessage = {\n type: SkySplitViewMessageType.FocusWorkspace,\n };\n this.splitViewStream.next(message);\n }\n}\n","<div class=\"sky-padding-even-xl\">\n <sky-split-view [messageStream]=\"splitViewStream\">\n <sky-split-view-drawer [ariaLabel]=\"'Transaction list'\">\n <sky-repeater [activeIndex]=\"activeIndex\">\n @for (item of items; track item; let i = $index) {\n <sky-repeater-item\n (click)=\"onItemClick(i)\"\n (keyup.enter)=\"onItemClick(i)\"\n >\n <sky-repeater-item-content>\n {{ item.amount }} <br />\n {{ item.date }} <br />\n {{ item.vendor }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n }\n </sky-repeater>\n </sky-split-view-drawer>\n\n <sky-split-view-workspace ariaLabel=\"Transaction form\">\n <sky-split-view-workspace-content class=\"sky-padding-even-xl\">\n <form [formGroup]=\"splitViewDemoForm\" (ngSubmit)=\"onApprove()\">\n <sky-description-list labelWidth=\"150px\">\n <sky-description-list-content>\n <sky-description-list-term>\n Receipt amount\n </sky-description-list-term>\n <sky-description-list-description>\n {{ activeRecord.amount }}\n </sky-description-list-description>\n </sky-description-list-content>\n <sky-description-list-content>\n <sky-description-list-term> Date </sky-description-list-term>\n <sky-description-list-description>\n {{ activeRecord.date }}\n </sky-description-list-description>\n </sky-description-list-content>\n <sky-description-list-content>\n <sky-description-list-term> Vendor </sky-description-list-term>\n <sky-description-list-description>\n {{ activeRecord.vendor }}\n </sky-description-list-description>\n </sky-description-list-content>\n <sky-description-list-content>\n <sky-description-list-term>\n Receipt image\n </sky-description-list-term>\n <sky-description-list-description>\n {{ activeRecord.receiptImage }}\n </sky-description-list-description>\n </sky-description-list-content>\n </sky-description-list>\n <sky-input-box labelText=\"Approved amount\" stacked=\"true\">\n <input formControlName=\"approvedAmount\" type=\"text\" />\n </sky-input-box>\n <sky-input-box labelText=\"Comments\">\n <textarea formControlName=\"comments\"></textarea>\n </sky-input-box>\n </form>\n </sky-split-view-workspace-content>\n <sky-split-view-workspace-footer>\n <sky-summary-action-bar>\n <sky-summary-action-bar-actions>\n <sky-summary-action-bar-primary-action (actionClick)=\"onApprove()\">\n Approve expense\n </sky-summary-action-bar-primary-action>\n <sky-summary-action-bar-secondary-actions>\n <sky-summary-action-bar-secondary-action (actionClick)=\"onDeny()\">\n Deny expense\n </sky-summary-action-bar-secondary-action>\n </sky-summary-action-bar-secondary-actions>\n </sky-summary-action-bar-actions>\n </sky-summary-action-bar>\n </sky-split-view-workspace-footer>\n </sky-split-view-workspace>\n </sky-split-view>\n</div>\n","import { Component, inject } from '@angular/core';\nimport {\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { SkySummaryActionBarModule } from '@skyux/action-bars';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyAlertModule } from '@skyux/indicators';\nimport {\n SkyDescriptionListModule,\n SkyPageModule,\n SkyPageSummaryModule,\n} from '@skyux/layout';\nimport { SkyRepeaterModule } from '@skyux/lists';\nimport { SkyConfirmService, SkyConfirmType } from '@skyux/modals';\nimport {\n SkySplitViewMessage,\n SkySplitViewMessageType,\n SkySplitViewModule,\n} from '@skyux/split-view';\n\nimport { Subject } from 'rxjs';\n\nimport { Record } from './record';\n\ninterface DemoForm {\n approvedAmount: FormControl<number>;\n comments: FormControl<string>;\n}\n\n@Component({\n selector: 'app-split-view-page-bound-example',\n templateUrl: './example.component.html',\n styleUrls: ['./example.component.scss'],\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyAlertModule,\n SkyDescriptionListModule,\n SkyInputBoxModule,\n SkyPageModule,\n SkyPageSummaryModule,\n SkyRepeaterModule,\n SkySplitViewModule,\n SkySummaryActionBarModule,\n ],\n})\nexport class SplitViewPageBoundExampleComponent {\n protected set activeIndex(value: number) {\n this.#_activeIndex = value;\n this.activeRecord = this.items[this.#_activeIndex];\n this.#loadFormGroup(this.activeRecord);\n }\n\n protected get activeIndex(): number {\n return this.#_activeIndex;\n }\n\n protected items: Record[] = [\n {\n id: 1,\n amount: 73.19,\n date: '5/13/2020',\n vendor: 'amazon.com',\n receiptImage: 'amzn-office-supply-order-5-13-19.png',\n approvedAmount: 73.19,\n comments: '',\n },\n {\n id: 2,\n amount: 214.12,\n date: '5/14/2020',\n vendor: 'Office Max',\n receiptImage: 'office-max-order.png',\n approvedAmount: 214.12,\n comments: '',\n },\n {\n id: 3,\n amount: 29.99,\n date: '5/14/2020',\n vendor: 'amazon.com',\n receiptImage: 'amzn-office-supply-order-5-14-19.png',\n approvedAmount: 29.99,\n comments: '',\n },\n {\n id: 4,\n amount: 1500,\n date: '5/15/2020',\n vendor: 'Fresh Catering, LLC',\n receiptImage: 'fresh-catering-llc-order.png',\n approvedAmount: 1500,\n comments: '',\n },\n {\n id: 5,\n amount: 456.24,\n date: '5/16/2020',\n vendor: 'Wish',\n receiptImage: 'wish-delivery-order.png',\n approvedAmount: 456.24,\n comments: '',\n },\n {\n id: 6,\n amount: 62.37,\n date: '5/16/2020',\n vendor: 'Staples',\n receiptImage: 'staples-paper-bulk-order.png',\n approvedAmount: 62.37,\n comments: '',\n },\n {\n id: 7,\n amount: 51.84,\n date: '5/17/2020',\n vendor: 'amazon.com',\n receiptImage: 'amzn-office-supply-order-5-17-19.png',\n approvedAmount: 51.84,\n comments: '',\n },\n {\n id: 8,\n amount: 92.55,\n date: '5/18/2020',\n vendor: 'Home Depot',\n receiptImage: 'home-depot-order.png',\n approvedAmount: 0.0,\n comments: '',\n },\n {\n id: 9,\n amount: 38.29,\n date: '5/18/2020',\n vendor: 'Papa Johns',\n receiptImage: 'papa-johns-order.png',\n approvedAmount: 38.29,\n comments: '',\n },\n ];\n\n protected activeRecord: Record;\n protected splitViewDemoForm: FormGroup<DemoForm>;\n protected splitViewStream = new Subject<SkySplitViewMessage>();\n protected unapprovedTransaction = true;\n\n #_activeIndex = 0;\n\n readonly #confirmSvc = inject(SkyConfirmService);\n\n constructor() {\n // Start with the first item selected.\n this.activeIndex = 0;\n this.activeRecord = this.items[this.activeIndex];\n\n this.splitViewDemoForm = new FormGroup({\n approvedAmount: new FormControl(this.activeRecord.approvedAmount, {\n nonNullable: true,\n }),\n comments: new FormControl(this.activeRecord.comments, {\n nonNullable: true,\n }),\n });\n }\n\n protected onItemClick(index: number): void {\n // Prevent workspace from loading new data if the current workspace form is dirty.\n if (this.splitViewDemoForm.dirty && index !== this.activeIndex) {\n this.#openConfirmModal(index);\n } else {\n this.#loadWorkspace(index);\n }\n }\n\n protected onApprove(): void {\n console.log('Approved clicked!');\n this.#saveForm();\n }\n\n protected onDeny(): void {\n console.log('Denied clicked!');\n }\n\n #loadFormGroup(record: Record): void {\n this.splitViewDemoForm = new FormGroup({\n approvedAmount: new FormControl(record.approvedAmount, {\n nonNullable: true,\n }),\n comments: new FormControl(record.comments, { nonNullable: true }),\n });\n }\n\n #loadWorkspace(index: number): void {\n this.activeIndex = index;\n this.#setFocusInWorkspace();\n }\n\n #openConfirmModal(index: number): void {\n this.#confirmSvc\n .open({\n message:\n 'You have unsaved work. Would you like to save it before you change records?',\n type: SkyConfirmType.Custom,\n buttons: [\n {\n action: 'yes',\n text: 'Yes',\n styleType: 'primary',\n },\n {\n action: 'discard',\n text: 'Discard changes',\n styleType: 'link',\n },\n ],\n })\n .closed.subscribe((closeArgs) => {\n if (closeArgs.action.toLowerCase() === 'yes') {\n this.#saveForm();\n }\n\n this.#loadWorkspace(index);\n });\n }\n\n #saveForm(): void {\n this.activeRecord.approvedAmount = parseFloat(\n `${this.splitViewDemoForm.value.approvedAmount ?? 0}`,\n );\n\n this.activeRecord.comments = this.splitViewDemoForm.value.comments ?? '';\n\n this.unapprovedTransaction =\n this.items.findIndex((item) => item.amount !== item.approvedAmount) >= 0;\n\n this.splitViewDemoForm.reset(this.splitViewDemoForm.value);\n }\n\n #setFocusInWorkspace(): void {\n const message: SkySplitViewMessage = {\n type: SkySplitViewMessageType.FocusWorkspace,\n };\n\n this.splitViewStream.next(message);\n }\n}\n","<sky-page layout=\"fit\">\n <div class=\"page-flex\">\n <div class=\"page-flex-header\">\n <sky-page-summary>\n @if (unapprovedTransaction) {\n <sky-page-summary-alert>\n <sky-alert alertType=\"info\"\n >There is an unapproved transaction.</sky-alert\n >\n </sky-page-summary-alert>\n }\n <sky-page-summary-title> SKY Developers, LLC </sky-page-summary-title>\n <sky-page-summary-subtitle>\n Petty Cash Transactions\n </sky-page-summary-subtitle>\n <sky-page-summary-content>\n The transactions below cover various operating expenses which do not\n fall under one of the budgets areas of expenditures.\n </sky-page-summary-content>\n </sky-page-summary>\n </div>\n <div class=\"page-flex-main\">\n <sky-split-view dock=\"fill\" [messageStream]=\"splitViewStream\">\n <sky-split-view-drawer [ariaLabel]=\"'Transaction list'\">\n <sky-repeater [activeIndex]=\"activeIndex\">\n @for (item of items; track item; let i = $index) {\n <sky-repeater-item\n (click)=\"onItemClick(i)\"\n (keyup.enter)=\"onItemClick(i)\"\n >\n <sky-repeater-item-content>\n {{ item.amount }} <br />\n {{ item.date }} <br />\n {{ item.vendor }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n }\n </sky-repeater>\n </sky-split-view-drawer>\n\n <sky-split-view-workspace [ariaLabel]=\"'Transaction form'\">\n <sky-split-view-workspace-content class=\"sky-padding-even-xl\">\n <form [formGroup]=\"splitViewDemoForm\" (ngSubmit)=\"onApprove()\">\n <sky-description-list labelWidth=\"150px\">\n <sky-description-list-content>\n <sky-description-list-term>\n Receipt amount\n </sky-description-list-term>\n <sky-description-list-description>\n {{ activeRecord.amount }}\n </sky-description-list-description>\n </sky-description-list-content>\n <sky-description-list-content>\n <sky-description-list-term> Date </sky-description-list-term>\n <sky-description-list-description>\n {{ activeRecord.date }}\n </sky-description-list-description>\n </sky-description-list-content>\n <sky-description-list-content>\n <sky-description-list-term>\n Vendor\n </sky-description-list-term>\n <sky-description-list-description>\n {{ activeRecord.vendor }}\n </sky-description-list-description>\n </sky-description-list-content>\n <sky-description-list-content>\n <sky-description-list-term>\n Receipt image\n </sky-description-list-term>\n <sky-description-list-description>\n {{ activeRecord.receiptImage }}\n </sky-description-list-description>\n </sky-description-list-content>\n </sky-description-list>\n <sky-input-box labelText=\"Approved amount\" stacked=\"true\">\n <input formControlName=\"approvedAmount\" type=\"text\" />\n </sky-input-box>\n <sky-input-box labelText=\"Comments\">\n <textarea formControlName=\"comments\"></textarea>\n </sky-input-box>\n </form>\n </sky-split-view-workspace-content>\n <sky-split-view-workspace-footer>\n <sky-summary-action-bar>\n <sky-summary-action-bar-actions>\n <sky-summary-action-bar-primary-action\n (actionClick)=\"onApprove()\"\n >\n Approve expense\n </sky-summary-action-bar-primary-action>\n <sky-summary-action-bar-secondary-actions>\n <sky-summary-action-bar-secondary-action\n (actionClick)=\"onDeny()\"\n >\n Deny expense\n </sky-summary-action-bar-secondary-action>\n </sky-summary-action-bar-secondary-actions>\n </sky-summary-action-bar-actions>\n </sky-summary-action-bar>\n </sky-split-view-workspace-footer>\n </sky-split-view-workspace>\n </sky-split-view>\n </div>\n </div>\n</sky-page>\n","import { Component } from '@angular/core';\nimport { SkyProgressIndicatorModule } from '@skyux/progress-indicator';\n\n@Component({\n selector: 'app-progress-indicator-passive-indicator-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyProgressIndicatorModule],\n})\nexport class ProgressIndicatorPassiveIndicatorBasicExampleComponent {}\n","<sky-progress-indicator\n data-sky-id=\"example-progress-indicator\"\n [isPassive]=\"true\"\n [startingIndex]=\"1\"\n>\n <sky-progress-indicator-item\n data-sky-id=\"finished-step\"\n helpPopoverContent=\"Example help content for finished step\"\n helpPopoverTitle=\"Start here\"\n title=\"Finished step\"\n >Optional details about this step\n </sky-progress-indicator-item>\n <sky-progress-indicator-item\n helpPopoverContent=\"Example help content for current step\"\n title=\"Current step\"\n />\n <sky-progress-indicator-item title=\"HIDDEN TITLE\" />\n</sky-progress-indicator>\n","import { Component, inject } from '@angular/core';\nimport { FormBuilder, FormGroup, ReactiveFormsModule } from '@angular/forms';\nimport { SkyCheckboxModule, SkyInputBoxModule } from '@skyux/forms';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\nimport {\n SkyProgressIndicatorActionClickArgs,\n SkyProgressIndicatorChange,\n SkyProgressIndicatorDisplayModeType,\n SkyProgressIndicatorModule,\n} from '@skyux/progress-indicator';\n\n@Component({\n selector: 'app-modal',\n templateUrl: './modal.component.html',\n imports: [\n ReactiveFormsModule,\n SkyCheckboxModule,\n SkyInputBoxModule,\n SkyModalModule,\n SkyProgressIndicatorModule,\n ],\n})\nexport class ModalComponent {\n protected activeIndex: number | undefined = 0;\n protected displayMode: SkyProgressIndicatorDisplayModeType = 'horizontal';\n protected formGroup: FormGroup;\n protected title = 'Wizard example';\n\n protected get requirementsMet(): boolean {\n switch (this.activeIndex) {\n case 0:\n return !!this.formGroup.get('requiredValue1')?.value;\n case 1:\n return !!this.formGroup.get('requiredValue2')?.value;\n default:\n return false;\n }\n }\n\n protected readonly instance = inject(SkyModalInstance);\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n requiredValue1: undefined,\n requiredValue2: undefined,\n });\n }\n\n protected onCancelClick(): void {\n this.instance.cancel();\n }\n\n protected onSaveClick(args: SkyProgressIndicatorActionClickArgs): void {\n args.progressHandler.advance();\n this.instance.save();\n }\n\n protected updateIndex(changes: SkyProgressIndicatorChange): void {\n this.activeIndex = changes.activeIndex;\n }\n}\n","<sky-modal [headingText]=\"title\">\n <sky-modal-content>\n <form [formGroup]=\"formGroup\">\n <sky-progress-indicator\n #wizardDemo\n [displayMode]=\"displayMode\"\n (progressChanges)=\"updateIndex($event)\"\n >\n <sky-progress-indicator-item title=\"First step\">\n <sky-input-box labelText=\"Enter text to continue\">\n <input type=\"text\" formControlName=\"requiredValue1\" />\n </sky-input-box>\n </sky-progress-indicator-item>\n\n <sky-progress-indicator-item title=\"Second step\">\n <div>\n <sky-checkbox\n formControlName=\"requiredValue2\"\n labelText=\"Select to continue\"\n />\n </div>\n </sky-progress-indicator-item>\n\n <sky-progress-indicator-item title=\"Third step\">\n <div>Additional content or tasks go here.</div>\n </sky-progress-indicator-item>\n </sky-progress-indicator>\n </form>\n </sky-modal-content>\n <sky-modal-footer>\n <sky-progress-indicator-nav-button\n buttonType=\"previous\"\n [progressIndicator]=\"wizardDemo\"\n />\n <sky-progress-indicator-nav-button\n buttonType=\"next\"\n [disabled]=\"!requirementsMet\"\n [progressIndicator]=\"wizardDemo\"\n />\n <sky-progress-indicator-nav-button\n buttonType=\"finish\"\n buttonText=\"Finish\"\n [progressIndicator]=\"wizardDemo\"\n (actionClick)=\"onSaveClick($event)\"\n />\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n (click)=\"onCancelClick()\"\n >\n Cancel\n </button>\n </sky-modal-footer>\n</sky-modal>\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { SkyModalService } from '@skyux/modals';\n\nimport { ModalComponent } from './modal.component';\n\n@Component({\n standalone: true,\n selector: 'app-progress-indicator-wizard-basic-example',\n templateUrl: './example.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ProgressIndicatorWizardBasicExampleComponent {\n readonly #modalSvc = inject(SkyModalService);\n\n protected openWizard(): void {\n this.#modalSvc.open(ModalComponent);\n }\n}\n","<button class=\"sky-btn sky-btn-default\" type=\"button\" (click)=\"openWizard()\">\n Open wizard\n</button>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { SkyHrefModule } from '@skyux/router';\n\n@Component({\n selector: 'app-router-href-basic-example',\n templateUrl: './example.component.html',\n styleUrls: ['./example.component.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyHrefModule],\n})\nexport class RouterHrefBasicExampleComponent {}\n","<p>\n <span>Link where the user has access:</span>\n <a skyHref=\"https://example.com\" data-sky-id=\"my-href-1\">Example.com</a>\n</p>\n<p>\n <span>Link where the user has access, translated:</span>\n <a skyHref=\"allow://example.com\" data-sky-id=\"my-href-allow\"\n >Example.com with “allow” protocol</a\n >\n</p>\n<p>\n <span>Link where the user does not have access, hidden by default:</span>\n <a skyHref=\"deny://example.com\" data-sky-id=\"my-href-hidden\"\n >Example.com with “deny” protocol</a\n >\n</p>\n<p>\n <span>Link where the user does not have access, shown as plain text:</span>\n <a\n skyHref=\"deny://example.com\"\n skyHrefElse=\"unlink\"\n data-sky-id=\"my-href-unlinked\"\n >Example.com with “deny” protocol</a\n >\n</p>\n","export class ModalContext {\n public title = '';\n public buttonText = '';\n}\n","import { Component, inject } from '@angular/core';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\n\nimport { ModalContext } from './modal-context';\n\n@Component({\n selector: 'app-modal',\n templateUrl: './modal.component.html',\n imports: [SkyModalModule],\n})\nexport class ModalComponent {\n protected readonly context = inject(ModalContext);\n protected readonly instance = inject(SkyModalInstance);\n\n protected submit(): void {\n this.instance.close(undefined, 'save');\n }\n}\n","<sky-modal [headingText]=\"context.title\">\n <sky-modal-content>\n <br />\n <br />\n </sky-modal-content>\n <sky-modal-footer>\n <button class=\"sky-btn sky-btn-primary\" type=\"button\" (click)=\"submit()\">\n {{ context.buttonText }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n inject,\n} from '@angular/core';\nimport { SkyModalCloseArgs, SkyModalService } from '@skyux/modals';\nimport {\n SkyProgressIndicatorChange,\n SkyProgressIndicatorMessage,\n SkyProgressIndicatorMessageType,\n SkyProgressIndicatorModule,\n} from '@skyux/progress-indicator';\n\nimport { Subject } from 'rxjs';\nimport { take } from 'rxjs/operators';\n\nimport { ModalContext } from './modal-context';\nimport { ModalComponent } from './modal.component';\n\n@Component({\n selector: 'app-progress-indicator-waterfall-indicator-basic-example',\n templateUrl: './example.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyProgressIndicatorModule],\n})\nexport class ProgressIndicatorWaterfallIndicatorBasicExampleComponent {\n protected activeIndex: number | undefined = 0;\n\n protected progressMessageStream = new Subject<\n SkyProgressIndicatorMessage | SkyProgressIndicatorMessageType\n >();\n\n readonly #changeDetectorRef = inject(ChangeDetectorRef);\n readonly #modalSvc = inject(SkyModalService);\n\n protected configureConnection(isProgress: boolean): void {\n this.#openModalForm(\n {\n title: 'Configure connection',\n buttonText: 'Submit connection settings',\n },\n isProgress,\n );\n }\n\n protected setServer(isProgress: boolean): void {\n this.#openModalForm(\n {\n title: 'Select remote server',\n buttonText: 'Submit server choice',\n },\n isProgress,\n );\n }\n\n protected testConnection(isProgress: boolean): void {\n this.#openModalForm(\n {\n title: 'Connection confirmed.',\n buttonText: 'OK',\n },\n isProgress,\n );\n }\n\n protected alertMessage(message: string): void {\n alert(message);\n }\n\n protected updateIndex(changes: SkyProgressIndicatorChange): void {\n this.activeIndex = changes.activeIndex;\n this.#changeDetectorRef.detectChanges();\n }\n\n protected resetClicked(): void {\n this.progressMessageStream.next(SkyProgressIndicatorMessageType.Reset);\n }\n\n private progress(): void {\n this.progressMessageStream.next(SkyProgressIndicatorMessageType.Progress);\n }\n\n #openModalForm(context: ModalContext, isProgress: boolean): void {\n const modalForm = this.#modalSvc.open(ModalComponent, [\n {\n provide: ModalContext,\n useValue: context,\n },\n ]);\n\n modalForm.closed.pipe(take(1)).subscribe((args: SkyModalCloseArgs) => {\n if (args.reason === 'save' && isProgress) {\n this.progress();\n }\n });\n }\n}\n","<sky-progress-indicator\n #progressIndicator\n data-sky-id=\"example-progress-indicator\"\n [messageStream]=\"progressMessageStream\"\n [startingIndex]=\"2\"\n (progressChanges)=\"updateIndex($event)\"\n>\n <sky-progress-indicator-title>\n Set up my connection\n </sky-progress-indicator-title>\n\n <sky-progress-indicator-item\n data-sky-id=\"configure-connection\"\n helpPopoverContent=\"Example help for configure connection\"\n title=\"Configure connection\"\n >\n <div>\n @if (activeIndex === 0) {\n <button\n class=\"sky-btn sky-btn-primary\"\n type=\"button\"\n (click)=\"configureConnection(true)\"\n >\n Set up connection\n </button>\n }\n @if (activeIndex && activeIndex > 0) {\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n (click)=\"configureConnection(false)\"\n >\n Edit connection\n </button>\n }\n </div>\n </sky-progress-indicator-item>\n\n <sky-progress-indicator-item\n helpPopoverContent=\"Example help for select remote server\"\n helpPopoverTitle=\"Which server is right for me?\"\n title=\"Select remote server\"\n >\n @if (activeIndex && activeIndex >= 1) {\n <div>\n @if (activeIndex === 1) {\n <button\n class=\"sky-btn sky-btn-primary\"\n type=\"button\"\n (click)=\"setServer(true)\"\n >\n Select server\n </button>\n } @else {\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n (click)=\"setServer(false)\"\n >\n Change server\n </button>\n }\n </div>\n }\n </sky-progress-indicator-item>\n\n <sky-progress-indicator-item\n data-sky-id=\"test-connection\"\n title=\"Test connection\"\n >\n @if (activeIndex && activeIndex >= 2) {\n <div>\n @if (activeIndex === 2) {\n <button\n class=\"sky-btn sky-btn-primary\"\n type=\"button\"\n (click)=\"testConnection(true)\"\n >\n Test connection\n </button>\n } @else {\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n (click)=\"testConnection(false)\"\n >\n Retest connection\n </button>\n }\n </div>\n }\n </sky-progress-indicator-item>\n\n <sky-progress-indicator-item title=\"Turn on connection\">\n @if (activeIndex && activeIndex >= 3) {\n <div>\n @if (activeIndex === 3) {\n <button\n class=\"sky-btn sky-btn-primary\"\n type=\"button\"\n (click)=\"alertMessage('Form completed')\"\n >\n Turn on\n </button>\n }\n </div>\n }\n </sky-progress-indicator-item>\n\n <sky-progress-indicator-reset-button [progressIndicator]=\"progressIndicator\">\n Erase all settings\n </sky-progress-indicator-reset-button>\n</sky-progress-indicator>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n standalone: true,\n selector: 'app-address-form',\n template: `<div>Address form</div>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AddressFormComponent {}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n OnInit,\n inject,\n} from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyStatusIndicatorModule } from '@skyux/indicators';\nimport { SkyFluidGridModule } from '@skyux/layout';\nimport { SkySectionedFormService } from '@skyux/tabs';\n\n@Component({\n selector: 'app-information-form',\n templateUrl: './information-form.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n ReactiveFormsModule,\n SkyInputBoxModule,\n SkyFluidGridModule,\n SkyStatusIndicatorModule,\n ],\n})\nexport class InformationFormComponent implements OnInit {\n protected id = '5324901';\n protected formGroup: FormGroup<{\n name: FormControl<string>;\n nameRequired: FormControl<boolean>;\n id: FormControl<string>;\n }>;\n protected name = '';\n protected nameRequired = false;\n\n readonly #sectionedFormSvc = inject(SkySectionedFormService);\n readonly #changeDetector = inject(ChangeDetectorRef);\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n name: new FormControl(this.name, { nonNullable: true }),\n nameRequired: new FormControl(this.nameRequired, { nonNullable: true }),\n id: new FormControl(this.id, {\n nonNullable: true,\n validators: [Validators.pattern('^[0-9]+$')],\n }),\n });\n }\n\n public ngOnInit(): void {\n this.formGroup.valueChanges.subscribe((changes) => {\n this.id = changes.id ?? '';\n this.name = changes.name ?? '';\n this.nameRequired = !!changes.nameRequired;\n this.#checkValidity();\n });\n\n this.#changeDetector.markForCheck();\n }\n\n #checkValidity(): void {\n if (this.nameRequired) {\n this.formGroup.get('name')?.setValidators([Validators.required]);\n this.#sectionedFormSvc.requiredFieldChanged(true);\n } else {\n this.formGroup.get('name')?.setValidators([]);\n this.#sectionedFormSvc.requiredFieldChanged(false);\n }\n\n if (!this.formGroup.get('name')?.value && this.nameRequired) {\n this.#sectionedFormSvc.invalidFieldChanged(true);\n } else {\n this.#sectionedFormSvc.invalidFieldChanged(false);\n }\n }\n}\n","<form novalidate [formGroup]=\"formGroup\">\n <sky-fluid-grid gutterSize=\"small\" [disableMargin]=\"true\">\n <sky-row>\n <sky-column [screenXSmall]=\"6\">\n <sky-input-box labelText=\"Name\" stacked=\"true\">\n <input formControlName=\"name\" type=\"text\" />\n </sky-input-box>\n </sky-column>\n <sky-column [screenXSmall]=\"6\">\n <sky-input-box labelText=\"ID\" stacked=\"true\">\n <input formControlName=\"id\" type=\"text\" />\n <span class=\"sky-error-indicator\">\n @if (formGroup.get('id')?.invalid) {\n <sky-status-indicator\n indicatorType=\"danger\"\n descriptionType=\"error\"\n >\n Enter a valid value.\n </sky-status-indicator>\n }\n </span>\n </sky-input-box>\n </sky-column>\n </sky-row>\n </sky-fluid-grid>\n</form>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n standalone: true,\n selector: 'app-phone-form',\n template: `<div>Phone form</div>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PhoneFormComponent {}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ViewChild,\n inject,\n} from '@angular/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\nimport { SkySectionedFormComponent, SkySectionedFormModule } from '@skyux/tabs';\n\nimport { AddressFormComponent } from './address-form.component';\nimport { InformationFormComponent } from './information-form.component';\nimport { PhoneFormComponent } from './phone-form.component';\n\n@Component({\n selector: 'app-modal',\n templateUrl: './modal.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n AddressFormComponent,\n InformationFormComponent,\n PhoneFormComponent,\n SkyIconModule,\n SkyModalModule,\n SkySectionedFormModule,\n ],\n})\nexport class ModalComponent {\n @ViewChild(SkySectionedFormComponent)\n protected sectionedFormComponent: SkySectionedFormComponent | undefined;\n\n protected activeIndexDisplay: number | undefined;\n protected activeTab = true;\n\n protected readonly modalInstance = inject(SkyModalInstance);\n readonly #changeDetector = inject(ChangeDetectorRef);\n\n protected onIndexChanged(newIndex: number): void {\n this.activeIndexDisplay = newIndex;\n this.#changeDetector.markForCheck();\n }\n\n protected tabsHidden(): boolean {\n return !this.sectionedFormComponent?.tabsVisible();\n }\n\n protected showTabs(): void {\n this.sectionedFormComponent?.showTabs();\n }\n}\n","<sky-modal [headingText]=\"'Sectioned form — Index: ' + activeIndexDisplay\">\n <sky-modal-content>\n <sky-sectioned-form (indexChanged)=\"onIndexChanged($event)\">\n <sky-sectioned-form-section heading=\"Basic information\">\n <app-information-form />\n </sky-sectioned-form-section>\n <sky-sectioned-form-section\n heading=\"Addresses\"\n [itemCount]=\"2\"\n [active]=\"activeTab\"\n >\n <app-address-form />\n </sky-sectioned-form-section>\n <sky-sectioned-form-section heading=\"Phone numbers\" [itemCount]=\"3\">\n <app-phone-form />\n </sky-sectioned-form-section>\n </sky-sectioned-form>\n </sky-modal-content>\n <sky-modal-footer>\n @if (tabsHidden()) {\n <button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"showTabs()\"\n >\n <sky-icon icon=\"chevron-left\" />\n Show sections\n </button>\n }\n <button\n class=\"sky-btn sky-btn-primary\"\n type=\"button\"\n (click)=\"modalInstance.save()\"\n >\n Save\n </button>\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n (click)=\"modalInstance.cancel()\"\n >\n Cancel\n </button>\n </sky-modal-footer>\n</sky-modal>\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { SkyModalCloseArgs, SkyModalService } from '@skyux/modals';\n\nimport { ModalComponent } from './modal.component';\n\n@Component({\n standalone: true,\n selector: 'app-tabs-sectioned-form-modal-example',\n templateUrl: './example.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TabsSectionedFormModalExampleComponent {\n readonly #modalSvc = inject(SkyModalService);\n\n protected openModal(): void {\n const modalInstance = this.#modalSvc.open(ModalComponent, {\n size: 'large',\n });\n\n modalInstance.closed.subscribe((result: SkyModalCloseArgs) => {\n if (result.reason === 'cancel') {\n console.log(`Modal cancelled`);\n } else if (result.reason === 'save') {\n console.log(`Modal saved`);\n }\n });\n }\n}\n","<button class=\"sky-btn sky-btn-default\" type=\"button\" (click)=\"openModal()\">\n Open sectioned form\n</button>\n","import { Component } from '@angular/core';\nimport { SkyTabsModule } from '@skyux/tabs';\n\n@Component({\n selector: 'app-tabs-dynamic-example',\n templateUrl: './example.component.html',\n imports: [SkyTabsModule],\n})\nexport class TabsDynamicExampleComponent {\n protected tabArray = [\n {\n tabHeading: 'Tab 1',\n tabContent: 'A list containing 25012 items',\n },\n {\n tabHeading: 'Tab 2',\n tabContent: 'A list containing 280 items',\n },\n {\n tabHeading: 'Tab 3',\n tabContent: \"This tab doesn't have a list of items\",\n },\n ];\n}\n","<sky-tabset ariaLabel=\"Tab examplenstration\">\n @for (tab of tabArray; track tab) {\n <sky-tab [tabHeading]=\"tab.tabHeading\">\n {{ tab.tabContent }}\n </sky-tab>\n }\n</sky-tabset>\n","import { Component } from '@angular/core';\nimport { SkyTabsModule } from '@skyux/tabs';\n\n@Component({\n selector: 'app-tabs-static-example',\n templateUrl: './example.component.html',\n imports: [SkyTabsModule],\n})\nexport class TabsStaticExampleComponent {}\n","<sky-tabset ariaLabel=\"Tab examplenstration\">\n <sky-tab [tabHeading]=\"'Tab 1'\"> Content for Tab 1 </sky-tab>\n <sky-tab [tabHeading]=\"'Tab 2'\"> Content for Tab 2 </sky-tab>\n <sky-tab [tabHeading]=\"'Tab 3'\"> Content for Tab 3 </sky-tab>\n</sky-tabset>\n","import { Component } from '@angular/core';\nimport { SkyTabsModule } from '@skyux/tabs';\n\n@Component({\n selector: 'app-tabs-static-add-close-example',\n templateUrl: './example.component.html',\n imports: [SkyTabsModule],\n})\nexport class TabsStaticAddCloseExampleComponent {\n protected showTab3 = true;\n\n protected onNewTabClick(): void {\n alert('Add tab clicked!');\n }\n}\n","<sky-tabset ariaLabel=\"Tab examplenstration\" (newTab)=\"onNewTabClick()\">\n <sky-tab [tabHeading]=\"'Tab 1'\"> Content for Tab 1 </sky-tab>\n <sky-tab [tabHeading]=\"'Tab 2'\"> Content for Tab 2 </sky-tab>\n @if (showTab3) {\n <sky-tab [tabHeading]=\"'Tab 3'\" (close)=\"showTab3 = false\">\n Content for Tab 3\n </sky-tab>\n }\n</sky-tabset>\n","import { Component } from '@angular/core';\nimport { SkyTabsModule } from '@skyux/tabs';\n\n@Component({\n selector: 'app-tabs-dynamic-add-close-example',\n templateUrl: './example.component.html',\n imports: [SkyTabsModule],\n})\nexport class TabsDynamicAddCloseExampleComponent {\n protected tabArray = [\n {\n tabHeading: 'Tab 1',\n tabContent: 'Content for Tab 1',\n },\n {\n tabHeading: 'Tab 2',\n tabContent: 'Content for Tab 2',\n },\n {\n tabHeading: 'Tab 3',\n tabContent: 'Content for Tab 3',\n },\n ];\n\n #tabCounter = 3;\n\n protected onNewTabClick(): void {\n this.#tabCounter++;\n\n this.tabArray.push({\n tabHeading: 'Tab ' + this.#tabCounter,\n tabContent: 'Content for Tab' + this.#tabCounter,\n });\n }\n\n protected onCloseClick(arrayIndex: number): void {\n this.tabArray.splice(arrayIndex, 1);\n }\n}\n","<sky-tabset ariaLabel=\"Tab examplenstration\" (newTab)=\"onNewTabClick()\">\n @for (tab of tabArray; track tab; let i = $index) {\n <sky-tab [tabHeading]=\"tab.tabHeading\" (close)=\"onCloseClick(i)\">\n {{ tab.tabContent }}\n </sky-tab>\n }\n</sky-tabset>\n","import { Component } from '@angular/core';\nimport { SkyVerticalTabsetModule } from '@skyux/tabs';\n\n@Component({\n selector: 'app-tabs-vertical-tabs-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyVerticalTabsetModule],\n})\nexport class TabsVerticalTabsBasicExampleComponent {}\n","<sky-vertical-tabset>\n <sky-vertical-tab tabHeading=\"Tab 1\"> Tab 1 content </sky-vertical-tab>\n <sky-vertical-tab tabHeading=\"Tab 2\" [active]=\"true\">\n Tab 2 content\n </sky-vertical-tab>\n <sky-vertical-tab tabHeading=\"Tab 3\"> Tab 3 content </sky-vertical-tab>\n</sky-vertical-tabset>\n","import { Component, OnInit, inject } from '@angular/core';\nimport {\n FormBuilder,\n FormControl,\n FormGroup,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport { SkyCheckboxModule, SkyInputBoxModule } from '@skyux/forms';\nimport { SkyFluidGridModule } from '@skyux/layout';\nimport { SkyModalInstance, SkyModalModule } from '@skyux/modals';\nimport { SkyPhoneFieldModule } from '@skyux/phone-field';\nimport { SkyTabIndex, SkyTabsModule } from '@skyux/tabs';\n\n@Component({\n selector: 'app-modal',\n templateUrl: './modal.component.html',\n imports: [\n ReactiveFormsModule,\n SkyCheckboxModule,\n SkyFluidGridModule,\n SkyInputBoxModule,\n SkyModalModule,\n SkyPhoneFieldModule,\n SkyTabsModule,\n ],\n})\nexport class ModalComponent implements OnInit {\n protected activeIndex: SkyTabIndex = 0;\n protected formGroup: FormGroup;\n protected isSaveDisabled = true;\n protected isStep2Disabled = true;\n protected isStep3Disabled = true;\n protected title = 'New Member Sign-up';\n\n readonly #instance = inject(SkyModalInstance);\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n firstName: new FormControl('', Validators.required),\n middleName: new FormControl(''),\n lastName: new FormControl('', Validators.required),\n phoneNumber: new FormControl('', Validators.required),\n email: new FormControl('', Validators.required),\n termsAccepted: new FormControl(false),\n mailingList: new FormControl(false),\n });\n }\n\n public ngOnInit(): void {\n this.formGroup.valueChanges.subscribe(() => {\n this.#checkRequirementsMet();\n });\n }\n\n protected onCancelClick(): void {\n this.#instance.cancel();\n }\n\n protected onSave(): void {\n this.#instance.save();\n }\n\n #checkRequirementsMet(): void {\n this.isStep2Disabled = !(\n this.formGroup?.get('firstName')?.value &&\n this.formGroup?.get('lastName')?.value\n );\n\n this.isStep3Disabled = !(\n this.formGroup?.get('phoneNumber')?.value &&\n this.formGroup?.get('phoneNumber')?.valid &&\n this.formGroup?.get('email')?.value\n );\n\n this.isSaveDisabled = !this.formGroup?.get('termsAccepted')?.value;\n }\n}\n","<form [formGroup]=\"formGroup\" (ngSubmit)=\"onSave()\">\n <sky-modal [headingText]=\"title\">\n <sky-modal-content>\n <sky-tabset\n #wizardDemo\n ariaLabel=\"Sign-up steps\"\n tabStyle=\"wizard\"\n [(active)]=\"activeIndex\"\n >\n <sky-tab tabHeading=\"1. Biographical Details\">\n <sky-fluid-grid gutterSize=\"small\" [disableMargin]=\"true\">\n <sky-row>\n <sky-column [screenSmall]=\"12\" [screenMedium]=\"4\">\n <sky-input-box labelText=\"First name\" [stacked]=\"true\">\n <input type=\"text\" formControlName=\"firstName\" />\n </sky-input-box>\n </sky-column>\n <sky-column [screenSmall]=\"12\" [screenMedium]=\"4\">\n <sky-input-box labelText=\"Middle name\" [stacked]=\"true\">\n <input type=\"text\" formControlName=\"middleName\" />\n </sky-input-box>\n </sky-column>\n <sky-column [screenSmall]=\"12\" [screenMedium]=\"4\">\n <sky-input-box labelText=\"Last name\">\n <input type=\"text\" formControlName=\"lastName\" />\n </sky-input-box>\n </sky-column>\n </sky-row>\n </sky-fluid-grid>\n </sky-tab>\n <sky-tab\n tabHeading=\"2. Contact Information\"\n [disabled]=\"isStep2Disabled\"\n >\n <sky-fluid-grid gutterSize=\"small\" [disableMargin]=\"true\">\n <sky-row>\n <sky-column [screenSmall]=\"12\" [screenMedium]=\"6\">\n <sky-input-box labelText=\"Phone Number\" [stacked]=\"true\">\n <sky-phone-field defaultCountry=\"us\">\n <input formControlName=\"phoneNumber\" skyPhoneFieldInput />\n </sky-phone-field>\n </sky-input-box>\n </sky-column>\n <sky-column [screenSmall]=\"12\" [screenMedium]=\"6\">\n <sky-input-box labelText=\"Email\">\n <input type=\"email\" formControlName=\"email\" />\n </sky-input-box>\n </sky-column>\n </sky-row>\n </sky-fluid-grid>\n </sky-tab>\n <sky-tab tabHeading=\"3. More Information\" [disabled]=\"isStep3Disabled\">\n <sky-fluid-grid gutterSize=\"small\" [disableMargin]=\"true\">\n <sky-row>\n <sky-column [screenSmall]=\"12\">\n <sky-checkbox\n formControlName=\"termsAccepted\"\n labelText=\"Accept terms and conditions\"\n required\n />\n </sky-column>\n <sky-column [screenSmall]=\"12\">\n <sky-checkbox\n formControlName=\"mailingList\"\n labelText=\"Sign up for our email newsletter\"\n />\n </sky-column>\n </sky-row>\n </sky-fluid-grid>\n </sky-tab>\n </sky-tabset>\n </sky-modal-content>\n <sky-modal-footer>\n <sky-tabset-nav-button buttonType=\"previous\" [tabset]=\"wizardDemo\" />\n <sky-tabset-nav-button buttonType=\"next\" [tabset]=\"wizardDemo\" />\n <sky-tabset-nav-button\n buttonType=\"finish\"\n [tabset]=\"wizardDemo\"\n [disabled]=\"isSaveDisabled\"\n />\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n (click)=\"onCancelClick()\"\n >\n Cancel\n </button>\n </sky-modal-footer>\n </sky-modal>\n</form>\n","import { Component, inject } from '@angular/core';\nimport { SkyModalService } from '@skyux/modals';\n\nimport { ModalComponent } from './modal.component';\n\n@Component({\n standalone: true,\n selector: 'app-tabs-wizard-basic-example',\n templateUrl: './example.component.html',\n})\nexport class TabsWizardBasicExampleComponent {\n readonly #modalSvc = inject(SkyModalService);\n\n #modalSize = 'large';\n\n protected openWizard(): void {\n this.#modalSvc.open(ModalComponent, { size: this.#modalSize });\n }\n}\n","<button type=\"button\" class=\"sky-btn sky-btn-default\" (click)=\"openWizard()\">\n Open Wizard\n</button>\n","import { Component } from '@angular/core';\nimport { SkyVerticalTabsetModule } from '@skyux/tabs';\n\nimport { TabGroup } from './group';\n\n@Component({\n selector: 'app-tabs-vertical-tabs-grouped-example',\n templateUrl: './example.component.html',\n imports: [SkyVerticalTabsetModule],\n})\nexport class TabsVerticalTabsGroupedExampleComponent {\n protected groups: TabGroup[] = [\n {\n heading: 'Group 1',\n isOpen: false,\n isDisabled: false,\n subTabs: [\n { tabHeading: 'Group 1 — Tab 1', content: 'Group 1 — Tab 1 Content' },\n {\n tabHeading: 'Group 1 — Tab 2',\n content: 'Group 1 — Tab 2 Content',\n tabHeaderCount: 7,\n },\n ],\n },\n {\n heading: 'Group 2',\n isOpen: true,\n isDisabled: false,\n subTabs: [\n {\n tabHeading: 'Group 2 — Tab 1',\n content: 'Group 2 — Tab 1 Content',\n active: true,\n },\n {\n tabHeading: 'Group 2 — Tab 2 — Disabled',\n content: 'Group 2 — Tab 2 Content',\n disabled: true,\n },\n ],\n },\n {\n heading: 'Disabled',\n isOpen: false,\n isDisabled: true,\n subTabs: [],\n },\n ];\n}\n","<sky-vertical-tabset showTabsText=\"Tab list\">\n @for (group of groups; track group) {\n <sky-vertical-tabset-group\n [groupHeading]=\"group.heading\"\n [open]=\"group.isOpen\"\n [disabled]=\"group.isDisabled\"\n >\n @for (tab of group.subTabs; track tab) {\n <sky-vertical-tab\n [active]=\"tab.active\"\n [tabHeading]=\"tab.tabHeading\"\n [tabHeaderCount]=\"tab.tabHeaderCount\"\n [disabled]=\"tab.disabled\"\n >\n {{ tab.content }}\n </sky-vertical-tab>\n }\n </sky-vertical-tabset-group>\n }\n</sky-vertical-tabset>\n","import { Component } from '@angular/core';\n\n@Component({\n standalone: true,\n selector: 'app-theme-box-basic-example',\n template: `\n <div\n class=\"sky-box sky-elevation-1-bordered\"\n style=\"width: 50%; height: 250px\"\n ></div>\n\n <div\n class=\"sky-box sky-elevation-0-bordered\"\n style=\"width: 50%; height: 250px\"\n ></div>\n `,\n})\nexport class ThemeBoxBasicExampleComponent {}\n","import { Component } from '@angular/core';\n\n@Component({\n standalone: true,\n selector: 'app-theme-status-indicator-basic-example',\n template: `\n <div class=\"sky-text-danger\">Danger status indicator</div>\n <div class=\"sky-text-info\">Info status indicator</div>\n <div class=\"sky-text-success\">Success status indicator</div>\n <div class=\"sky-text-warning\">Warning status indicator</div>\n `,\n})\nexport class ThemeStatusIndicatorBasicExampleComponent {}\n","import { Component } from '@angular/core';\nimport { SkyTilesModule } from '@skyux/tiles';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'div.tile1',\n templateUrl: './tile1.component.html',\n imports: [SkyTilesModule],\n})\nexport class Tile1Component {\n public tileSettingsClick(): void {\n alert('tile settings clicked');\n }\n}\n","<sky-tile\n data-sky-id=\"tile-1\"\n helpPopoverContent=\"Sample help information for tile 1.\"\n helpPopoverTitle=\"Sample help content\"\n tileName=\"Tile 1\"\n (settingsClick)=\"tileSettingsClick()\"\n>\n <sky-tile-title> Tile 1 </sky-tile-title>\n <sky-tile-summary> $123.4m </sky-tile-summary>\n <sky-tile-content>\n <sky-tile-content-section data-sky-id=\"section-1\">\n Section 1\n </sky-tile-content-section>\n <sky-tile-content-section> Section 2 </sky-tile-content-section>\n <sky-tile-content-section> Section 3 </sky-tile-content-section>\n </sky-tile-content>\n</sky-tile>\n","import { Component } from '@angular/core';\nimport { SkyTilesModule } from '@skyux/tiles';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'div.tile2',\n templateUrl: './tile2.component.html',\n imports: [SkyTilesModule],\n})\nexport class Tile2Component {}\n","<sky-tile helpKey=\"tile-2-help\" tileName=\"Tile 2\" [attr.data-sky-id]=\"'tile-2'\">\n <sky-tile-title> Tile 2 </sky-tile-title>\n <sky-tile-content>\n <sky-tile-content-section> Section 1 </sky-tile-content-section>\n <sky-tile-content-section> Section 2 </sky-tile-content-section>\n <sky-tile-content-section> Section 3 </sky-tile-content-section>\n </sky-tile-content>\n</sky-tile>\n","import { Component } from '@angular/core';\nimport { SkyTileDashboardConfig, SkyTilesModule } from '@skyux/tiles';\n\nimport { Tile1Component } from './tile1.component';\nimport { Tile2Component } from './tile2.component';\n\n@Component({\n selector: 'app-tiles-basic-example',\n templateUrl: './example.component.html',\n imports: [SkyTilesModule],\n})\nexport class TilesBasicExampleComponent {\n protected dashboardConfig: SkyTileDashboardConfig = {\n tiles: [\n {\n id: 'tile1',\n componentType: Tile1Component,\n },\n {\n id: 'tile2',\n componentType: Tile2Component,\n },\n ],\n layout: {\n singleColumn: {\n tiles: [\n {\n id: 'tile2',\n isCollapsed: false,\n },\n {\n id: 'tile1',\n isCollapsed: true,\n },\n ],\n },\n multiColumn: [\n {\n tiles: [\n {\n id: 'tile1',\n isCollapsed: true,\n },\n ],\n },\n {\n tiles: [\n {\n id: 'tile2',\n isCollapsed: false,\n },\n ],\n },\n ],\n },\n };\n}\n","<sky-tile-dashboard\n data-sky-id=\"basic-dashboard\"\n [(config)]=\"dashboardConfig\"\n/>\n","export class CustomToastContext {\n constructor(public message: string) {}\n}\n","import { Component, inject } from '@angular/core';\nimport { SkyToastInstance } from '@skyux/toast';\n\nimport { CustomToastContext } from './custom-context';\n\n@Component({\n standalone: true,\n selector: 'app-toast-content-example',\n templateUrl: './custom-toast.component.html',\n})\nexport class CustomToastComponent {\n protected readonly context = inject(CustomToastContext);\n readonly #instance = inject(SkyToastInstance);\n\n protected close(): void {\n this.#instance.close();\n }\n}\n","<div><strong>Custom message:</strong> {{ context.message }}</div>\n","import { Component, inject } from '@angular/core';\nimport { SkyToastService, SkyToastType } from '@skyux/toast';\n\nimport { CustomToastContext } from './custom-context';\nimport { CustomToastComponent } from './custom-toast.component';\n\n@Component({\n standalone: true,\n selector: 'app-toast-custom-component-example',\n templateUrl: './example.component.html',\n})\nexport class ToastCustomComponentExampleComponent {\n readonly #toastSvc = inject(SkyToastService);\n\n protected openToast(): void {\n const context = new CustomToastContext(\n 'This toast has embedded a custom component for its content.',\n );\n\n this.#toastSvc.openComponent(\n CustomToastComponent,\n {\n type: SkyToastType.Success,\n },\n [\n {\n provide: CustomToastContext,\n useValue: context,\n },\n ],\n );\n }\n\n protected closeAll(): void {\n this.#toastSvc.closeAll();\n }\n}\n","<button\n class=\"sky-btn sky-btn-primary sky-margin-inline-sm\"\n type=\"button\"\n (click)=\"openToast()\"\n>\n Open toast\n</button>\n<button class=\"sky-btn sky-btn-default\" type=\"button\" (click)=\"closeAll()\">\n Close all\n</button>\n","import { Component, inject } from '@angular/core';\nimport { SkyToastService, SkyToastType } from '@skyux/toast';\n\n@Component({\n standalone: true,\n selector: 'app-toast-basic-example',\n templateUrl: './example.component.html',\n})\nexport class ToastBasicExampleComponent {\n readonly #toastSvc = inject(SkyToastService);\n\n protected openToast(): void {\n this.#toastSvc.openMessage('This is a sample toast message.', {\n type: SkyToastType.Success,\n });\n }\n\n protected closeAll(): void {\n this.#toastSvc.closeAll();\n }\n}\n","<button\n class=\"sky-btn sky-btn-primary sky-margin-inline-sm\"\n type=\"button\"\n (click)=\"openToast()\"\n>\n Open toast\n</button>\n<button class=\"sky-btn sky-btn-default\" type=\"button\" (click)=\"closeAll()\">\n Close all\n</button>\n","import { Component } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyEmailValidationModule } from '@skyux/validation';\n\n@Component({\n selector: 'app-validation-email-validation-directive-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyEmailValidationModule,\n SkyInputBoxModule,\n ],\n})\nexport class ValidationEmailValidationDirectiveExampleComponent {\n protected exampleModel: {\n emailAddress?: string;\n } = {};\n}\n","<form novalidate>\n <div>\n <sky-input-box stacked=\"true\" labelText=\"Email address\">\n <input\n class=\"sky-form-control\"\n name=\"emailAddress\"\n skyEmailValidation\n type=\"text\"\n [(ngModel)]=\"exampleModel.emailAddress\"\n />\n </sky-input-box>\n </div>\n</form>\n","import { Component, inject } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyValidators } from '@skyux/validation';\n\n@Component({\n selector: 'app-validation-email-validation-control-validator-example',\n templateUrl: './example.component.html',\n imports: [FormsModule, ReactiveFormsModule, SkyInputBoxModule],\n})\nexport class ValidationEmailValidationControlValidatorExampleComponent {\n protected get emailControl(): AbstractControl | null {\n return this.formGroup.get('email');\n }\n\n protected formGroup: FormGroup;\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n email: new FormControl(undefined, [\n Validators.required,\n SkyValidators.email,\n ]),\n });\n }\n}\n","<form novalidate [formGroup]=\"formGroup\">\n <div>\n <sky-input-box stacked=\"true\" labelText=\"Email address\">\n <input formControlName=\"email\" type=\"text\" />\n </sky-input-box>\n </div>\n</form>\n","import { Component, inject } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport { SkyValidators } from '@skyux/validation';\n\n@Component({\n selector: 'app-validation-url-validation-control-validator-example',\n templateUrl: './example.component.html',\n imports: [FormsModule, ReactiveFormsModule, SkyInputBoxModule],\n})\nexport class ValidationUrlValidationControlValidatorExampleComponent {\n protected get urlControl(): AbstractControl | null {\n return this.formGroup.get('url');\n }\n\n protected formGroup: FormGroup;\n\n constructor() {\n this.formGroup = inject(FormBuilder).group({\n url: new FormControl(undefined, [\n Validators.required,\n SkyValidators.url({\n rulesetVersion: 2,\n }),\n ]),\n });\n }\n}\n","<form novalidate [formGroup]=\"formGroup\">\n <div>\n <sky-input-box stacked=\"true\" labelText=\"URL\">\n <input formControlName=\"url\" type=\"text\" />\n </sky-input-box>\n </div>\n</form>\n","import { Component } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { SkyInputBoxModule } from '@skyux/forms';\nimport {\n SkyUrlValidationModule,\n SkyUrlValidationOptions,\n} from '@skyux/validation';\n\n@Component({\n selector: 'app-validation-url-validation-directive-example',\n templateUrl: './example.component.html',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n SkyInputBoxModule,\n SkyUrlValidationModule,\n ],\n})\nexport class ValidationUrlValidationDirectiveExampleComponent {\n protected exampleModel: {\n url?: string;\n } = {};\n\n protected skyUrlValidationOptions: SkyUrlValidationOptions = {\n rulesetVersion: 2,\n };\n}\n","<form novalidate>\n <div>\n <sky-input-box stacked=\"true\" labelText=\"URL\">\n <input\n name=\"url\"\n [skyUrlValidation]=\"skyUrlValidationOptions\"\n [(ngModel)]=\"exampleModel.url\"\n />\n </sky-input-box>\n </div>\n</form>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["DemoService","i1","i4","i3","i2","validateText","ModalComponent","ContextMenuComponent","DEPARTMENTS","JOB_TITLES","AG_GRID_DEMO_DATA","EditModalContext","EditModalComponent","FilterModalComponent","ViewGridComponent","InlineHelpComponent","isColorpickerOutput","takeUntil","delay","FlyoutComponent","customValidator","validatePaymentMethod","i5","people","nextId","AddItemModalComponent","ModalContext","ModalDemoDataService","ModalDemoContext","SkyPageModule","ListPageContentComponent","RecordPageContentComponent","i6","i7"],"mappings":"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"}