@kirbydesign/designsystem 9.5.0 → 9.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (551) hide show
  1. package/avatar/avatar.component.d.ts +4 -1
  2. package/card/card-as-button/card-as-button.directive.d.ts +2 -3
  3. package/card/card.component.d.ts +9 -2
  4. package/esm2022/accordion/accordion-item.component.mjs +4 -4
  5. package/esm2022/accordion/accordion.directive.mjs +4 -4
  6. package/esm2022/accordion/accordion.module.mjs +5 -5
  7. package/esm2022/accordion/kirbydesign-designsystem-accordion.mjs +1 -1
  8. package/esm2022/accordion/public_api.mjs +1 -1
  9. package/esm2022/action-group/action-group.component.mjs +4 -4
  10. package/esm2022/action-group/kirbydesign-designsystem-action-group.mjs +1 -1
  11. package/esm2022/action-group/public_api.mjs +1 -1
  12. package/esm2022/avatar/avatar.component.mjs +12 -6
  13. package/esm2022/avatar/kirbydesign-designsystem-avatar.mjs +1 -1
  14. package/esm2022/avatar/public_api.mjs +1 -1
  15. package/esm2022/badge/badge.component.mjs +4 -4
  16. package/esm2022/badge/kirbydesign-designsystem-badge.mjs +1 -1
  17. package/esm2022/badge/public_api.mjs +1 -1
  18. package/esm2022/button/button.component.mjs +4 -4
  19. package/esm2022/button/kirbydesign-designsystem-button.mjs +1 -1
  20. package/esm2022/button/public_api.mjs +1 -1
  21. package/esm2022/calendar/calendar.component.mjs +4 -4
  22. package/esm2022/calendar/helpers/calendar-cell.model.mjs +1 -1
  23. package/esm2022/calendar/helpers/calendar-options.model.mjs +1 -1
  24. package/esm2022/calendar/helpers/calendar.helper.mjs +4 -4
  25. package/esm2022/calendar/kirbydesign-designsystem-calendar.mjs +1 -1
  26. package/esm2022/calendar/options/calendar-year-navigator-config.mjs +1 -1
  27. package/esm2022/calendar/public_api.mjs +1 -1
  28. package/esm2022/card/card-as-button/card-as-button.directive.mjs +4 -9
  29. package/esm2022/card/card-flag-level.mjs +1 -1
  30. package/esm2022/card/card-footer/card-footer.component.mjs +5 -5
  31. package/esm2022/card/card-header/card-header.component.mjs +4 -4
  32. package/esm2022/card/card.component.mjs +27 -9
  33. package/esm2022/card/card.module.mjs +5 -5
  34. package/esm2022/card/kirbydesign-designsystem-card.mjs +1 -1
  35. package/esm2022/card/public_api.mjs +1 -1
  36. package/esm2022/chart/chart/chart.component.mjs +4 -4
  37. package/esm2022/chart/chart/index.mjs +1 -1
  38. package/esm2022/chart/chart-config/chart-bar-config/chart-bar-config.mjs +1 -1
  39. package/esm2022/chart/chart-config/chart-base-config.mjs +1 -1
  40. package/esm2022/chart/chart-config/chart-stock-config/chart-stock-config.mjs +1 -1
  41. package/esm2022/chart/chart-config/chart-stock-config/data-label-position/data-label-position.mjs +1 -1
  42. package/esm2022/chart/chart-config/chart-stock-config/vertical-line-plugin/vertical-line-plugin.mjs +1 -1
  43. package/esm2022/chart/chart-config/chart-stock-config/vertical-line-plugin/vertical-line-plugin.model.mjs +1 -1
  44. package/esm2022/chart/charts.module.mjs +5 -5
  45. package/esm2022/chart/kirbydesign-designsystem-chart.mjs +1 -1
  46. package/esm2022/chart/public_api.mjs +1 -1
  47. package/esm2022/chart/shared/base-chart/base-chart.component.mjs +4 -4
  48. package/esm2022/chart/shared/base-chart/index.mjs +1 -1
  49. package/esm2022/chart/shared/chart-config-service/chart-config.service.mjs +4 -4
  50. package/esm2022/chart/shared/chart-config-service/configs/annotations.config.mjs +1 -1
  51. package/esm2022/chart/shared/chart-config-service/configs/global-defaults.config.mjs +1 -1
  52. package/esm2022/chart/shared/chart-config-service/configs/interaction-functions-extensions.config.mjs +1 -1
  53. package/esm2022/chart/shared/chart-config-service/configs/type.config.mjs +1 -1
  54. package/esm2022/chart/shared/chart-config-service/index.mjs +1 -1
  55. package/esm2022/chart/shared/chart-js-service/annotations.delegate.mjs +1 -1
  56. package/esm2022/chart/shared/chart-js-service/chart-js.service.mjs +4 -4
  57. package/esm2022/chart/shared/chart-js-service/chartjs-plugin-marker/chartjs-plugin-marker.mjs +1 -1
  58. package/esm2022/chart/shared/chart-js-service/configured-chart-js.mjs +1 -1
  59. package/esm2022/chart/shared/chart-js-service/index.mjs +1 -1
  60. package/esm2022/chart/shared/chart-js-service/test-utils.mjs +1 -1
  61. package/esm2022/chart/shared/charts.types.mjs +1 -1
  62. package/esm2022/chart/shared/index.mjs +1 -1
  63. package/esm2022/chart/stock-chart/index.mjs +1 -1
  64. package/esm2022/chart/stock-chart/stock-chart-js.service.mjs +4 -4
  65. package/esm2022/chart/stock-chart/stock-chart.component.mjs +4 -4
  66. package/esm2022/checkbox/checkbox.component.mjs +4 -4
  67. package/esm2022/checkbox/kirbydesign-designsystem-checkbox.mjs +1 -1
  68. package/esm2022/checkbox/public_api.mjs +1 -1
  69. package/esm2022/data-table/data-table.module.mjs +5 -5
  70. package/esm2022/data-table/kirbydesign-designsystem-data-table.mjs +1 -1
  71. package/esm2022/data-table/public_api.mjs +1 -1
  72. package/esm2022/data-table/sortable/sortable.component.mjs +4 -4
  73. package/esm2022/data-table/table/table.component.mjs +4 -4
  74. package/esm2022/data-table/table-row/table-row.component.mjs +4 -4
  75. package/esm2022/divider/divider.component.mjs +4 -4
  76. package/esm2022/divider/kirbydesign-designsystem-divider.mjs +1 -1
  77. package/esm2022/divider/public_api.mjs +1 -1
  78. package/esm2022/dropdown/dropdown.component.mjs +5 -5
  79. package/esm2022/dropdown/dropdown.module.mjs +5 -5
  80. package/esm2022/dropdown/dropdown.types.mjs +1 -1
  81. package/esm2022/dropdown/keyboard-handler.service.mjs +4 -4
  82. package/esm2022/dropdown/kirbydesign-designsystem-dropdown.mjs +1 -1
  83. package/esm2022/dropdown/public_api.mjs +1 -1
  84. package/esm2022/empty-state/empty-state.component.mjs +4 -4
  85. package/esm2022/empty-state/empty-state.module.mjs +5 -5
  86. package/esm2022/empty-state/kirbydesign-designsystem-empty-state.mjs +1 -1
  87. package/esm2022/empty-state/public_api.mjs +1 -1
  88. package/esm2022/fab-sheet/fab-sheet.component.mjs +4 -4
  89. package/esm2022/fab-sheet/kirbydesign-designsystem-fab-sheet.mjs +1 -1
  90. package/esm2022/fab-sheet/public_api.mjs +1 -1
  91. package/esm2022/flag/flag.component.mjs +4 -4
  92. package/esm2022/flag/kirbydesign-designsystem-flag.mjs +1 -1
  93. package/esm2022/flag/public_api.mjs +1 -1
  94. package/esm2022/form-field/directives/affix/affix.directive.mjs +4 -4
  95. package/esm2022/form-field/directives/date/date-input.directive.mjs +4 -4
  96. package/esm2022/form-field/directives/decimal-mask/decimal-mask.directive.mjs +4 -4
  97. package/esm2022/form-field/form-field-message/form-field-message.component.mjs +4 -4
  98. package/esm2022/form-field/form-field.component.mjs +4 -4
  99. package/esm2022/form-field/form-field.module.mjs +5 -5
  100. package/esm2022/form-field/input/input.component.mjs +4 -4
  101. package/esm2022/form-field/input-counter/input-counter.component.mjs +4 -4
  102. package/esm2022/form-field/kirbydesign-designsystem-form-field.mjs +1 -1
  103. package/esm2022/form-field/public_api.mjs +1 -1
  104. package/esm2022/form-field/textarea/textarea.component.mjs +4 -4
  105. package/esm2022/header/header.component.mjs +23 -16
  106. package/esm2022/header/header.module.mjs +5 -5
  107. package/esm2022/header/kirbydesign-designsystem-header.mjs +1 -1
  108. package/esm2022/header/public_api.mjs +1 -1
  109. package/esm2022/helpers/chart-config-has-type.mjs +1 -1
  110. package/esm2022/helpers/color-helper.mjs +1 -1
  111. package/esm2022/helpers/deep-copy.mjs +1 -1
  112. package/esm2022/helpers/design-token-helper.mjs +1 -1
  113. package/esm2022/helpers/element-has-ancestor.mjs +1 -1
  114. package/esm2022/helpers/ionic-element-part-helper.mjs +4 -4
  115. package/esm2022/helpers/kirby-animation.mjs +1 -1
  116. package/esm2022/helpers/kirbydesign-designsystem-helpers.mjs +1 -1
  117. package/esm2022/helpers/line-clamp-helper.mjs +4 -4
  118. package/esm2022/helpers/merge-deep.mjs +1 -1
  119. package/esm2022/helpers/platform.service.mjs +4 -4
  120. package/esm2022/helpers/public_api.mjs +1 -1
  121. package/esm2022/helpers/scss/kirbydesign-designsystem-helpers-scss.mjs +1 -1
  122. package/esm2022/helpers/scss/public_api.mjs +1 -1
  123. package/esm2022/helpers/scss/scss-helper.mjs +1 -1
  124. package/esm2022/helpers/string-helper.mjs +1 -1
  125. package/esm2022/helpers/theme-color.type.mjs +1 -1
  126. package/esm2022/helpers/unique-id-generator.helper.mjs +1 -1
  127. package/esm2022/icon/icon-registry.service.mjs +4 -4
  128. package/esm2022/icon/icon-settings.mjs +1 -1
  129. package/esm2022/icon/icon.component.mjs +4 -4
  130. package/esm2022/icon/icon.module.mjs +5 -5
  131. package/esm2022/icon/kirby-icon-settings.mjs +1 -1
  132. package/esm2022/icon/kirbydesign-designsystem-icon.mjs +1 -1
  133. package/esm2022/icon/public_api.mjs +1 -1
  134. package/esm2022/item/item.component.mjs +4 -4
  135. package/esm2022/item/item.module.mjs +5 -5
  136. package/esm2022/item/kirbydesign-designsystem-item.mjs +1 -1
  137. package/esm2022/item/label/label.component.mjs +4 -4
  138. package/esm2022/item/public_api.mjs +1 -1
  139. package/esm2022/item-group/item-group.component.mjs +4 -4
  140. package/esm2022/item-group/kirbydesign-designsystem-item-group.mjs +1 -1
  141. package/esm2022/item-group/public_api.mjs +1 -1
  142. package/esm2022/item-sliding/item-sliding.component.mjs +4 -4
  143. package/esm2022/item-sliding/item-sliding.types.mjs +1 -1
  144. package/esm2022/item-sliding/kirbydesign-designsystem-item-sliding.mjs +1 -1
  145. package/esm2022/item-sliding/public_api.mjs +1 -1
  146. package/esm2022/kirby-app/kirby-app.component.mjs +4 -4
  147. package/esm2022/kirby-app/kirby-app.module.mjs +5 -5
  148. package/esm2022/kirby-app/kirbydesign-designsystem-kirby-app.mjs +1 -1
  149. package/esm2022/kirby-app/public_api.mjs +1 -1
  150. package/esm2022/kirby-ionic-module/kirby-ionic.module.mjs +5 -5
  151. package/esm2022/kirby-ionic-module/kirbydesign-designsystem-kirby-ionic-module.mjs +1 -1
  152. package/esm2022/kirby-ionic-module/public_api.mjs +1 -1
  153. package/esm2022/kirbydesign-designsystem.mjs +1 -1
  154. package/esm2022/lib/components/index.mjs +1 -1
  155. package/esm2022/lib/components/page-local-navigation/index.mjs +1 -1
  156. package/esm2022/lib/components/page-local-navigation/page-local-navigation-item.mjs +1 -1
  157. package/esm2022/lib/components/page-local-navigation/page-local-navigation.component.mjs +4 -4
  158. package/esm2022/lib/components/segmented-control/segment-item.mjs +1 -1
  159. package/esm2022/lib/components/segmented-control/segmented-control.component.mjs +5 -5
  160. package/esm2022/lib/directives/index.mjs +1 -1
  161. package/esm2022/lib/directives/key-handler/key-handler.directive.mjs +4 -4
  162. package/esm2022/lib/directives/modal-router-link/modal-router-link.directive.mjs +4 -4
  163. package/esm2022/lib/index.mjs +1 -1
  164. package/esm2022/lib/kirby-experimental.module.mjs +5 -5
  165. package/esm2022/lib/kirby.module.mjs +5 -5
  166. package/esm2022/list/directives/index.mjs +1 -1
  167. package/esm2022/list/directives/infinite-scroll.directive.mjs +4 -4
  168. package/esm2022/list/directives/list-item-color.directive.mjs +4 -4
  169. package/esm2022/list/directives/scroll.model.mjs +1 -1
  170. package/esm2022/list/helpers/index.mjs +1 -1
  171. package/esm2022/list/helpers/list-helper.mjs +4 -4
  172. package/esm2022/list/kirbydesign-designsystem-list.mjs +1 -1
  173. package/esm2022/list/list-experimental/index.mjs +1 -1
  174. package/esm2022/list/list-experimental/list-experimental.component.mjs +4 -4
  175. package/esm2022/list/list-header/index.mjs +1 -1
  176. package/esm2022/list/list-header/list-header.component.mjs +4 -4
  177. package/esm2022/list/list-item/index.mjs +1 -1
  178. package/esm2022/list/list-item/list-item.component.mjs +5 -5
  179. package/esm2022/list/list-section-header/index.mjs +1 -1
  180. package/esm2022/list/list-section-header/list-section-header.component.mjs +4 -4
  181. package/esm2022/list/list-swipe-action.mjs +1 -1
  182. package/esm2022/list/list-swipe-action.type.mjs +1 -1
  183. package/esm2022/list/list.component.mjs +5 -5
  184. package/esm2022/list/list.directive.mjs +13 -13
  185. package/esm2022/list/list.event.mjs +1 -1
  186. package/esm2022/list/list.module.mjs +18 -12
  187. package/esm2022/list/public_api.mjs +1 -1
  188. package/esm2022/loading-overlay/kirbydesign-designsystem-loading-overlay.mjs +1 -1
  189. package/esm2022/loading-overlay/loading-overlay.component.mjs +4 -4
  190. package/esm2022/loading-overlay/loading-overlay.service.mjs +4 -4
  191. package/esm2022/loading-overlay/public_api.mjs +1 -1
  192. package/esm2022/menu/kirbydesign-designsystem-menu.mjs +1 -1
  193. package/esm2022/menu/menu.component.mjs +4 -4
  194. package/esm2022/menu/public_api.mjs +1 -1
  195. package/esm2022/modal/kirbydesign-designsystem-modal.mjs +1 -1
  196. package/esm2022/modal/modal/action-sheet/action-sheet.component.mjs +4 -4
  197. package/esm2022/modal/modal/action-sheet/config/action-sheet-config.mjs +1 -1
  198. package/esm2022/modal/modal/action-sheet/config/action-sheet-item.mjs +1 -1
  199. package/esm2022/modal/modal/action-sheet/index.mjs +1 -1
  200. package/esm2022/modal/modal/alert/alert.component.mjs +4 -4
  201. package/esm2022/modal/modal/alert/config/alert-config.mjs +1 -1
  202. package/esm2022/modal/modal/alert/index.mjs +1 -1
  203. package/esm2022/modal/modal/footer/modal-footer.component.mjs +5 -5
  204. package/esm2022/modal/modal/index.mjs +1 -1
  205. package/esm2022/modal/modal/modal-component/modal.component.mjs +12 -19
  206. package/esm2022/modal/modal/services/action-sheet.helper.mjs +4 -4
  207. package/esm2022/modal/modal/services/alert.helper.mjs +4 -4
  208. package/esm2022/modal/modal/services/can-dismiss-modal-guard.mjs +31 -0
  209. package/esm2022/modal/modal/services/can-dismiss.helper.mjs +4 -4
  210. package/esm2022/modal/modal/services/index.mjs +2 -1
  211. package/esm2022/modal/modal/services/modal-animation-builder.service.mjs +4 -4
  212. package/esm2022/modal/modal/services/modal.controller.mjs +12 -8
  213. package/esm2022/modal/modal/services/modal.helper.mjs +24 -26
  214. package/esm2022/modal/modal-navigation.service.mjs +25 -14
  215. package/esm2022/modal/modal-wrapper/compact/index.mjs +1 -1
  216. package/esm2022/modal/modal-wrapper/compact/modal-compact-wrapper.component.mjs +4 -4
  217. package/esm2022/modal/modal-wrapper/config/drawer-supplementary-action.mjs +1 -1
  218. package/esm2022/modal/modal-wrapper/config/index.mjs +1 -1
  219. package/esm2022/modal/modal-wrapper/config/modal-config.helper.mjs +1 -1
  220. package/esm2022/modal/modal-wrapper/config/modal-config.mjs +1 -1
  221. package/esm2022/modal/modal-wrapper/index.mjs +1 -1
  222. package/esm2022/modal/modal-wrapper/modal-elements-mover.delegate.mjs +1 -1
  223. package/esm2022/modal/modal-wrapper/modal-wrapper.component.mjs +4 -4
  224. package/esm2022/modal/modal.interfaces.mjs +4 -4
  225. package/esm2022/modal/public_api.mjs +1 -1
  226. package/esm2022/modal/v2/footer/footer.component.mjs +4 -4
  227. package/esm2022/modal/v2/kirby-modal.module.mjs +5 -5
  228. package/esm2022/modal/v2/kirbydesign-designsystem-modal-v2.mjs +1 -1
  229. package/esm2022/modal/v2/modal/modal.component.mjs +4 -4
  230. package/esm2022/modal/v2/modal-routing/modal-routing.component.mjs +4 -4
  231. package/esm2022/modal/v2/public_api.mjs +1 -1
  232. package/esm2022/modal/v2/services/modal.controller.mjs +4 -4
  233. package/esm2022/modal/v2/wrapper/wrapper.component.mjs +4 -4
  234. package/esm2022/page/kirbydesign-designsystem-page.mjs +1 -1
  235. package/esm2022/page/page-footer/page-footer.component.mjs +4 -4
  236. package/esm2022/page/page.component.mjs +37 -34
  237. package/esm2022/page/page.module.mjs +5 -5
  238. package/esm2022/page/public_api.mjs +1 -1
  239. package/esm2022/popover/kirbydesign-designsystem-popover.mjs +1 -1
  240. package/esm2022/popover/popover.component.mjs +4 -4
  241. package/esm2022/popover/public_api.mjs +1 -1
  242. package/esm2022/progress-circle/kirbydesign-designsystem-progress-circle.mjs +1 -1
  243. package/esm2022/progress-circle/progress-circle-ring.component.mjs +4 -4
  244. package/esm2022/progress-circle/progress-circle.component.mjs +4 -4
  245. package/esm2022/progress-circle/public_api.mjs +1 -1
  246. package/esm2022/public-api.mjs +1 -1
  247. package/esm2022/radio/kirbydesign-designsystem-radio.mjs +1 -1
  248. package/esm2022/radio/public_api.mjs +1 -1
  249. package/esm2022/radio/radio-group/radio-group.component.mjs +4 -4
  250. package/esm2022/radio/radio-module.mjs +5 -5
  251. package/esm2022/radio/radio.component.mjs +4 -4
  252. package/esm2022/range/kirbydesign-designsystem-range.mjs +1 -1
  253. package/esm2022/range/public_api.mjs +1 -1
  254. package/esm2022/range/range.component.mjs +4 -4
  255. package/esm2022/reorder-list/kirbydesign-designsystem-reorder-list.mjs +1 -1
  256. package/esm2022/reorder-list/public_api.mjs +1 -1
  257. package/esm2022/reorder-list/reorder-event.mjs +1 -1
  258. package/esm2022/reorder-list/reorder-list.component.mjs +4 -4
  259. package/esm2022/router-outlet/kirbydesign-designsystem-router-outlet.mjs +1 -1
  260. package/esm2022/router-outlet/public_api.mjs +1 -1
  261. package/esm2022/router-outlet/router-outlet.component.mjs +4 -4
  262. package/esm2022/router-outlet/router-outlet.module.mjs +5 -5
  263. package/esm2022/section-header/kirbydesign-designsystem-section-header.mjs +1 -1
  264. package/esm2022/section-header/public_api.mjs +1 -1
  265. package/esm2022/section-header/section-header.component.mjs +4 -4
  266. package/esm2022/shared/component-configuration.mjs +1 -1
  267. package/esm2022/shared/component-loader.directive.mjs +4 -4
  268. package/esm2022/shared/dynamic-component.mjs +1 -1
  269. package/esm2022/shared/fit-heading/fit-heading.directive.mjs +4 -4
  270. package/esm2022/shared/fit-heading/index.mjs +1 -1
  271. package/esm2022/shared/floating/floating.directive.mjs +4 -4
  272. package/esm2022/shared/floating/kirbydesign-designsystem-shared-floating.mjs +1 -1
  273. package/esm2022/shared/floating/public_api.mjs +1 -1
  274. package/esm2022/shared/kirbydesign-designsystem-shared.mjs +1 -1
  275. package/esm2022/shared/portal/kirbydesign-designsystem-shared-portal.mjs +1 -1
  276. package/esm2022/shared/portal/portal.directive.mjs +4 -4
  277. package/esm2022/shared/portal/public_api.mjs +1 -1
  278. package/esm2022/shared/public_api.mjs +1 -1
  279. package/esm2022/shared/resize-observer/resize-observer.factory.mjs +4 -4
  280. package/esm2022/shared/resize-observer/resize-observer.service.mjs +4 -4
  281. package/esm2022/shared/theme-color/theme-color.directive.mjs +4 -4
  282. package/esm2022/slide/kirbydesign-designsystem-slide.mjs +1 -1
  283. package/esm2022/slide/public_api.mjs +1 -1
  284. package/esm2022/slide/slide-stretch-height.directive.mjs +4 -4
  285. package/esm2022/slide/slide.directive.mjs +4 -4
  286. package/esm2022/slide/slide.module.mjs +5 -5
  287. package/esm2022/slide/slides.component.mjs +4 -4
  288. package/esm2022/slide-button/kirbydesign-designsystem-slide-button.mjs +1 -1
  289. package/esm2022/slide-button/public_api.mjs +1 -1
  290. package/esm2022/slide-button/slide-button.component.mjs +5 -5
  291. package/esm2022/spinner/kirbydesign-designsystem-spinner.mjs +1 -1
  292. package/esm2022/spinner/public_api.mjs +1 -1
  293. package/esm2022/spinner/spinner.component.mjs +4 -4
  294. package/esm2022/spinner/spinner.module.mjs +5 -5
  295. package/esm2022/tab-navigation/kirbydesign-designsystem-tab-navigation.mjs +1 -1
  296. package/esm2022/tab-navigation/public_api.mjs +1 -1
  297. package/esm2022/tab-navigation/tab-navigation/tab-navigation.component.mjs +4 -4
  298. package/esm2022/tab-navigation/tab-navigation-item/tab-navigation-item.component.mjs +4 -4
  299. package/esm2022/tab-navigation/tab-navigation.module.mjs +5 -5
  300. package/esm2022/tabs/kirbydesign-designsystem-tabs.mjs +1 -1
  301. package/esm2022/tabs/public_api.mjs +1 -1
  302. package/esm2022/tabs/tab-button/tab-button.component.mjs +4 -4
  303. package/esm2022/tabs/tab-button/tab-button.events.mjs +1 -1
  304. package/esm2022/tabs/tabs.component.mjs +4 -4
  305. package/esm2022/tabs/tabs.module.mjs +5 -5
  306. package/esm2022/tabs/tabs.service.mjs +4 -4
  307. package/esm2022/testing/element-css-custom-matchers.mjs +1 -1
  308. package/esm2022/testing/kirbydesign-designsystem-testing.mjs +1 -1
  309. package/esm2022/testing/public_api.mjs +1 -1
  310. package/esm2022/testing/test-helper.mjs +5 -5
  311. package/esm2022/testing-base/kirbydesign-designsystem-testing-base.mjs +1 -1
  312. package/esm2022/testing-base/lib/components/index.mjs +1 -1
  313. package/esm2022/testing-base/lib/components/mock.accordion-item.component.mjs +6 -4
  314. package/esm2022/testing-base/lib/components/mock.action-group.component.mjs +6 -4
  315. package/esm2022/testing-base/lib/components/mock.action-sheet.component.mjs +6 -4
  316. package/esm2022/testing-base/lib/components/mock.alert.component.mjs +6 -4
  317. package/esm2022/testing-base/lib/components/mock.avatar.component.mjs +6 -4
  318. package/esm2022/testing-base/lib/components/mock.badge.component.mjs +6 -4
  319. package/esm2022/testing-base/lib/components/mock.base-chart.component.mjs +6 -4
  320. package/esm2022/testing-base/lib/components/mock.button.component.mjs +6 -4
  321. package/esm2022/testing-base/lib/components/mock.calendar.component.mjs +6 -4
  322. package/esm2022/testing-base/lib/components/mock.card-footer.component.mjs +6 -4
  323. package/esm2022/testing-base/lib/components/mock.card-header.component.mjs +6 -4
  324. package/esm2022/testing-base/lib/components/mock.card.component.mjs +6 -4
  325. package/esm2022/testing-base/lib/components/mock.chart.component.mjs +6 -4
  326. package/esm2022/testing-base/lib/components/mock.checkbox.component.mjs +6 -4
  327. package/esm2022/testing-base/lib/components/mock.divider.component.mjs +6 -4
  328. package/esm2022/testing-base/lib/components/mock.dropdown.component.mjs +6 -4
  329. package/esm2022/testing-base/lib/components/mock.empty-state.component.mjs +6 -4
  330. package/esm2022/testing-base/lib/components/mock.fab-sheet.component.mjs +6 -4
  331. package/esm2022/testing-base/lib/components/mock.flag.component.mjs +6 -4
  332. package/esm2022/testing-base/lib/components/mock.footer.component.mjs +6 -4
  333. package/esm2022/testing-base/lib/components/mock.form-field-message.component.mjs +6 -4
  334. package/esm2022/testing-base/lib/components/mock.form-field.component.mjs +6 -4
  335. package/esm2022/testing-base/lib/components/mock.header.component.mjs +12 -10
  336. package/esm2022/testing-base/lib/components/mock.icon.component.mjs +6 -4
  337. package/esm2022/testing-base/lib/components/mock.input-counter.component.mjs +6 -4
  338. package/esm2022/testing-base/lib/components/mock.input.component.mjs +6 -4
  339. package/esm2022/testing-base/lib/components/mock.item-group.component.mjs +6 -4
  340. package/esm2022/testing-base/lib/components/mock.item-sliding.component.mjs +6 -4
  341. package/esm2022/testing-base/lib/components/mock.item.component.mjs +6 -4
  342. package/esm2022/testing-base/lib/components/mock.kirby-app.component.mjs +6 -4
  343. package/esm2022/testing-base/lib/components/mock.label.component.mjs +6 -4
  344. package/esm2022/testing-base/lib/components/mock.list-experimental.component.mjs +6 -4
  345. package/esm2022/testing-base/lib/components/mock.list-header.component.mjs +6 -4
  346. package/esm2022/testing-base/lib/components/mock.list-item.component.mjs +6 -4
  347. package/esm2022/testing-base/lib/components/mock.list-section-header.component.mjs +6 -4
  348. package/esm2022/testing-base/lib/components/mock.list.component.mjs +6 -4
  349. package/esm2022/testing-base/lib/components/mock.loading-overlay.component.mjs +6 -4
  350. package/esm2022/testing-base/lib/components/mock.menu.component.mjs +6 -4
  351. package/esm2022/testing-base/lib/components/mock.modal-compact-wrapper.component.mjs +6 -4
  352. package/esm2022/testing-base/lib/components/mock.modal-footer.component.mjs +6 -4
  353. package/esm2022/testing-base/lib/components/mock.modal-routing.component.mjs +6 -4
  354. package/esm2022/testing-base/lib/components/mock.modal-wrapper.component.mjs +6 -4
  355. package/esm2022/testing-base/lib/components/mock.modal.component.mjs +6 -4
  356. package/esm2022/testing-base/lib/components/mock.page-footer.component.mjs +6 -4
  357. package/esm2022/testing-base/lib/components/mock.page-local-navigation.component.mjs +6 -4
  358. package/esm2022/testing-base/lib/components/mock.page.component.mjs +44 -34
  359. package/esm2022/testing-base/lib/components/mock.popover.component.mjs +6 -4
  360. package/esm2022/testing-base/lib/components/mock.progress-circle-ring.component.mjs +6 -4
  361. package/esm2022/testing-base/lib/components/mock.progress-circle.component.mjs +6 -4
  362. package/esm2022/testing-base/lib/components/mock.radio-group.component.mjs +6 -4
  363. package/esm2022/testing-base/lib/components/mock.radio.component.mjs +6 -4
  364. package/esm2022/testing-base/lib/components/mock.range.component.mjs +6 -4
  365. package/esm2022/testing-base/lib/components/mock.reorder-list.component.mjs +6 -4
  366. package/esm2022/testing-base/lib/components/mock.router-outlet.component.mjs +6 -4
  367. package/esm2022/testing-base/lib/components/mock.section-header.component.mjs +6 -4
  368. package/esm2022/testing-base/lib/components/mock.segmented-control.component.mjs +6 -4
  369. package/esm2022/testing-base/lib/components/mock.slide-button.component.mjs +6 -4
  370. package/esm2022/testing-base/lib/components/mock.slides.component.mjs +6 -4
  371. package/esm2022/testing-base/lib/components/mock.spinner.component.mjs +6 -4
  372. package/esm2022/testing-base/lib/components/mock.stock-chart.component.mjs +6 -4
  373. package/esm2022/testing-base/lib/components/mock.tab-button.component.mjs +6 -4
  374. package/esm2022/testing-base/lib/components/mock.tab-navigation-item.component.mjs +6 -4
  375. package/esm2022/testing-base/lib/components/mock.tab-navigation.component.mjs +6 -4
  376. package/esm2022/testing-base/lib/components/mock.table-row.component.mjs +6 -4
  377. package/esm2022/testing-base/lib/components/mock.table.component.mjs +6 -4
  378. package/esm2022/testing-base/lib/components/mock.tabs.component.mjs +6 -4
  379. package/esm2022/testing-base/lib/components/mock.textarea.component.mjs +6 -4
  380. package/esm2022/testing-base/lib/components/mock.toggle-button.component.mjs +6 -4
  381. package/esm2022/testing-base/lib/components/mock.toggle.component.mjs +6 -4
  382. package/esm2022/testing-base/lib/components/mock.wrapper.component.mjs +6 -4
  383. package/esm2022/testing-base/lib/directives/index.mjs +1 -1
  384. package/esm2022/testing-base/lib/directives/mock.accordion.directive.mjs +4 -4
  385. package/esm2022/testing-base/lib/directives/mock.affix.directive.mjs +4 -4
  386. package/esm2022/testing-base/lib/directives/mock.card-as-button.directive.mjs +4 -4
  387. package/esm2022/testing-base/lib/directives/mock.component-loader.directive.mjs +4 -4
  388. package/esm2022/testing-base/lib/directives/mock.date-input.directive.mjs +4 -4
  389. package/esm2022/testing-base/lib/directives/mock.decimal-mask.directive.mjs +4 -4
  390. package/esm2022/testing-base/lib/directives/mock.fit-heading.directive.mjs +4 -4
  391. package/esm2022/testing-base/lib/directives/mock.floating.directive.mjs +4 -4
  392. package/esm2022/testing-base/lib/directives/mock.infinite-scroll.directive.mjs +4 -4
  393. package/esm2022/testing-base/lib/directives/mock.key-handler.directive.mjs +4 -4
  394. package/esm2022/testing-base/lib/directives/mock.list-item-color.directive.mjs +4 -4
  395. package/esm2022/testing-base/lib/directives/mock.list.directive.mjs +13 -13
  396. package/esm2022/testing-base/lib/directives/mock.modal-router-link.directive.mjs +4 -4
  397. package/esm2022/testing-base/lib/directives/mock.portal.directive.mjs +4 -4
  398. package/esm2022/testing-base/lib/directives/mock.slide.directive.mjs +4 -4
  399. package/esm2022/testing-base/lib/directives/mock.theme-color.directive.mjs +4 -4
  400. package/esm2022/testing-base/lib/index.mjs +1 -1
  401. package/esm2022/testing-base/lib/kirby-testing-base.module.mjs +5 -5
  402. package/esm2022/testing-base/lib/mock-components.mjs +1 -1
  403. package/esm2022/testing-base/lib/mock-directives.mjs +1 -1
  404. package/esm2022/testing-base/public_api.mjs +1 -1
  405. package/esm2022/testing-jasmine/kirbydesign-designsystem-testing-jasmine.mjs +1 -1
  406. package/esm2022/testing-jasmine/lib/kirby-testing.module.mjs +5 -5
  407. package/esm2022/testing-jasmine/lib/mock-providers.mjs +1 -1
  408. package/esm2022/testing-jasmine/public_api.mjs +1 -1
  409. package/esm2022/testing-jest/kirbydesign-designsystem-testing-jest.mjs +1 -1
  410. package/esm2022/testing-jest/lib/kirby-testing.module.mjs +5 -5
  411. package/esm2022/testing-jest/lib/mock-providers.mjs +1 -1
  412. package/esm2022/testing-jest/public_api.mjs +1 -1
  413. package/esm2022/toast/config/toast-config.mjs +1 -1
  414. package/esm2022/toast/kirbydesign-designsystem-toast.mjs +1 -1
  415. package/esm2022/toast/public_api.mjs +1 -1
  416. package/esm2022/toast/services/indexs.mjs +1 -1
  417. package/esm2022/toast/services/toast.controller.mjs +4 -4
  418. package/esm2022/toast/services/toast.helper.mjs +4 -4
  419. package/esm2022/toggle/kirbydesign-designsystem-toggle.mjs +1 -1
  420. package/esm2022/toggle/public_api.mjs +1 -1
  421. package/esm2022/toggle/toggle.component.mjs +4 -4
  422. package/esm2022/toggle-button/kirbydesign-designsystem-toggle-button.mjs +1 -1
  423. package/esm2022/toggle-button/public_api.mjs +1 -1
  424. package/esm2022/toggle-button/toggle-button.component.mjs +4 -4
  425. package/esm2022/toggle-button/toggle-button.module.mjs +5 -5
  426. package/esm2022/types/event-listener-dispose-fn.mjs +1 -1
  427. package/esm2022/types/kirbydesign-designsystem-types.mjs +1 -1
  428. package/esm2022/types/public_api.mjs +1 -1
  429. package/esm2022/types/window-ref.mjs +4 -4
  430. package/fesm2022/kirbydesign-designsystem-accordion.mjs +10 -10
  431. package/fesm2022/kirbydesign-designsystem-accordion.mjs.map +1 -1
  432. package/fesm2022/kirbydesign-designsystem-action-group.mjs +3 -3
  433. package/fesm2022/kirbydesign-designsystem-action-group.mjs.map +1 -1
  434. package/fesm2022/kirbydesign-designsystem-avatar.mjs +11 -5
  435. package/fesm2022/kirbydesign-designsystem-avatar.mjs.map +1 -1
  436. package/fesm2022/kirbydesign-designsystem-badge.mjs +3 -3
  437. package/fesm2022/kirbydesign-designsystem-badge.mjs.map +1 -1
  438. package/fesm2022/kirbydesign-designsystem-button.mjs +3 -3
  439. package/fesm2022/kirbydesign-designsystem-button.mjs.map +1 -1
  440. package/fesm2022/kirbydesign-designsystem-calendar.mjs +6 -6
  441. package/fesm2022/kirbydesign-designsystem-calendar.mjs.map +1 -1
  442. package/fesm2022/kirbydesign-designsystem-card.mjs +40 -27
  443. package/fesm2022/kirbydesign-designsystem-card.mjs.map +1 -1
  444. package/fesm2022/kirbydesign-designsystem-chart.mjs +22 -22
  445. package/fesm2022/kirbydesign-designsystem-chart.mjs.map +1 -1
  446. package/fesm2022/kirbydesign-designsystem-checkbox.mjs +3 -3
  447. package/fesm2022/kirbydesign-designsystem-checkbox.mjs.map +1 -1
  448. package/fesm2022/kirbydesign-designsystem-data-table.mjs +13 -13
  449. package/fesm2022/kirbydesign-designsystem-data-table.mjs.map +1 -1
  450. package/fesm2022/kirbydesign-designsystem-divider.mjs +3 -3
  451. package/fesm2022/kirbydesign-designsystem-divider.mjs.map +1 -1
  452. package/fesm2022/kirbydesign-designsystem-dropdown.mjs +11 -11
  453. package/fesm2022/kirbydesign-designsystem-dropdown.mjs.map +1 -1
  454. package/fesm2022/kirbydesign-designsystem-empty-state.mjs +7 -7
  455. package/fesm2022/kirbydesign-designsystem-empty-state.mjs.map +1 -1
  456. package/fesm2022/kirbydesign-designsystem-fab-sheet.mjs +3 -3
  457. package/fesm2022/kirbydesign-designsystem-fab-sheet.mjs.map +1 -1
  458. package/fesm2022/kirbydesign-designsystem-flag.mjs +3 -3
  459. package/fesm2022/kirbydesign-designsystem-flag.mjs.map +1 -1
  460. package/fesm2022/kirbydesign-designsystem-form-field.mjs +28 -28
  461. package/fesm2022/kirbydesign-designsystem-form-field.mjs.map +1 -1
  462. package/fesm2022/kirbydesign-designsystem-header.mjs +26 -19
  463. package/fesm2022/kirbydesign-designsystem-header.mjs.map +1 -1
  464. package/fesm2022/kirbydesign-designsystem-helpers-scss.mjs.map +1 -1
  465. package/fesm2022/kirbydesign-designsystem-helpers.mjs +9 -9
  466. package/fesm2022/kirbydesign-designsystem-helpers.mjs.map +1 -1
  467. package/fesm2022/kirbydesign-designsystem-icon.mjs +10 -10
  468. package/fesm2022/kirbydesign-designsystem-icon.mjs.map +1 -1
  469. package/fesm2022/kirbydesign-designsystem-item-group.mjs +3 -3
  470. package/fesm2022/kirbydesign-designsystem-item-group.mjs.map +1 -1
  471. package/fesm2022/kirbydesign-designsystem-item-sliding.mjs +3 -3
  472. package/fesm2022/kirbydesign-designsystem-item-sliding.mjs.map +1 -1
  473. package/fesm2022/kirbydesign-designsystem-item.mjs +10 -10
  474. package/fesm2022/kirbydesign-designsystem-item.mjs.map +1 -1
  475. package/fesm2022/kirbydesign-designsystem-kirby-app.mjs +7 -7
  476. package/fesm2022/kirbydesign-designsystem-kirby-app.mjs.map +1 -1
  477. package/fesm2022/kirbydesign-designsystem-kirby-ionic-module.mjs +4 -4
  478. package/fesm2022/kirbydesign-designsystem-kirby-ionic-module.mjs.map +1 -1
  479. package/fesm2022/kirbydesign-designsystem-list.mjs +55 -49
  480. package/fesm2022/kirbydesign-designsystem-list.mjs.map +1 -1
  481. package/fesm2022/kirbydesign-designsystem-loading-overlay.mjs +6 -6
  482. package/fesm2022/kirbydesign-designsystem-loading-overlay.mjs.map +1 -1
  483. package/fesm2022/kirbydesign-designsystem-menu.mjs +3 -3
  484. package/fesm2022/kirbydesign-designsystem-menu.mjs.map +1 -1
  485. package/fesm2022/kirbydesign-designsystem-modal-v2.mjs +19 -19
  486. package/fesm2022/kirbydesign-designsystem-modal-v2.mjs.map +1 -1
  487. package/fesm2022/kirbydesign-designsystem-modal.mjs +123 -90
  488. package/fesm2022/kirbydesign-designsystem-modal.mjs.map +1 -1
  489. package/fesm2022/kirbydesign-designsystem-page.mjs +43 -40
  490. package/fesm2022/kirbydesign-designsystem-page.mjs.map +1 -1
  491. package/fesm2022/kirbydesign-designsystem-popover.mjs +3 -3
  492. package/fesm2022/kirbydesign-designsystem-popover.mjs.map +1 -1
  493. package/fesm2022/kirbydesign-designsystem-progress-circle.mjs +6 -6
  494. package/fesm2022/kirbydesign-designsystem-progress-circle.mjs.map +1 -1
  495. package/fesm2022/kirbydesign-designsystem-radio.mjs +10 -10
  496. package/fesm2022/kirbydesign-designsystem-radio.mjs.map +1 -1
  497. package/fesm2022/kirbydesign-designsystem-range.mjs +3 -3
  498. package/fesm2022/kirbydesign-designsystem-range.mjs.map +1 -1
  499. package/fesm2022/kirbydesign-designsystem-reorder-list.mjs +3 -3
  500. package/fesm2022/kirbydesign-designsystem-reorder-list.mjs.map +1 -1
  501. package/fesm2022/kirbydesign-designsystem-router-outlet.mjs +7 -7
  502. package/fesm2022/kirbydesign-designsystem-router-outlet.mjs.map +1 -1
  503. package/fesm2022/kirbydesign-designsystem-section-header.mjs +3 -3
  504. package/fesm2022/kirbydesign-designsystem-section-header.mjs.map +1 -1
  505. package/fesm2022/kirbydesign-designsystem-shared-floating.mjs +3 -3
  506. package/fesm2022/kirbydesign-designsystem-shared-floating.mjs.map +1 -1
  507. package/fesm2022/kirbydesign-designsystem-shared-portal.mjs +3 -3
  508. package/fesm2022/kirbydesign-designsystem-shared-portal.mjs.map +1 -1
  509. package/fesm2022/kirbydesign-designsystem-shared.mjs +15 -15
  510. package/fesm2022/kirbydesign-designsystem-shared.mjs.map +1 -1
  511. package/fesm2022/kirbydesign-designsystem-slide-button.mjs +4 -4
  512. package/fesm2022/kirbydesign-designsystem-slide-button.mjs.map +1 -1
  513. package/fesm2022/kirbydesign-designsystem-slide.mjs +13 -13
  514. package/fesm2022/kirbydesign-designsystem-slide.mjs.map +1 -1
  515. package/fesm2022/kirbydesign-designsystem-spinner.mjs +7 -7
  516. package/fesm2022/kirbydesign-designsystem-spinner.mjs.map +1 -1
  517. package/fesm2022/kirbydesign-designsystem-tab-navigation.mjs +10 -10
  518. package/fesm2022/kirbydesign-designsystem-tab-navigation.mjs.map +1 -1
  519. package/fesm2022/kirbydesign-designsystem-tabs.mjs +13 -13
  520. package/fesm2022/kirbydesign-designsystem-tabs.mjs.map +1 -1
  521. package/fesm2022/kirbydesign-designsystem-testing-base.mjs +455 -307
  522. package/fesm2022/kirbydesign-designsystem-testing-base.mjs.map +1 -1
  523. package/fesm2022/kirbydesign-designsystem-testing-jasmine.mjs +4 -4
  524. package/fesm2022/kirbydesign-designsystem-testing-jasmine.mjs.map +1 -1
  525. package/fesm2022/kirbydesign-designsystem-testing-jest.mjs +4 -4
  526. package/fesm2022/kirbydesign-designsystem-testing-jest.mjs.map +1 -1
  527. package/fesm2022/kirbydesign-designsystem-testing.mjs +4 -4
  528. package/fesm2022/kirbydesign-designsystem-testing.mjs.map +1 -1
  529. package/fesm2022/kirbydesign-designsystem-toast.mjs +6 -6
  530. package/fesm2022/kirbydesign-designsystem-toast.mjs.map +1 -1
  531. package/fesm2022/kirbydesign-designsystem-toggle-button.mjs +7 -7
  532. package/fesm2022/kirbydesign-designsystem-toggle-button.mjs.map +1 -1
  533. package/fesm2022/kirbydesign-designsystem-toggle.mjs +3 -3
  534. package/fesm2022/kirbydesign-designsystem-toggle.mjs.map +1 -1
  535. package/fesm2022/kirbydesign-designsystem-types.mjs +3 -3
  536. package/fesm2022/kirbydesign-designsystem-types.mjs.map +1 -1
  537. package/fesm2022/kirbydesign-designsystem.mjs +21 -21
  538. package/fesm2022/kirbydesign-designsystem.mjs.map +1 -1
  539. package/header/header.component.d.ts +5 -2
  540. package/list/list.module.d.ts +1 -1
  541. package/modal/modal/modal-component/modal.component.d.ts +5 -5
  542. package/modal/modal/services/can-dismiss-modal-guard.d.ts +2 -0
  543. package/modal/modal/services/index.d.ts +1 -0
  544. package/modal/modal/services/modal.controller.d.ts +2 -0
  545. package/modal/modal/services/modal.helper.d.ts +3 -4
  546. package/modal/modal-navigation.service.d.ts +1 -0
  547. package/modal/modal.interfaces.d.ts +1 -0
  548. package/package.json +2 -2
  549. package/testing-base/lib/components/mock.avatar.component.d.ts +1 -1
  550. package/testing-base/lib/components/mock.button.component.d.ts +1 -1
  551. package/testing-jest/lib/mock-providers.d.ts +28 -28
@@ -197,12 +197,12 @@ class SegmentedControlComponent {
197
197
  });
198
198
  }
199
199
  }
200
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: SegmentedControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
201
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.9", type: SegmentedControlComponent, isStandalone: true, selector: "kirby-segmented-control", inputs: { mode: "mode", items: "items", selectedIndex: "selectedIndex", value: "value", size: "size", disableChangeOnSwipe: "disableChangeOnSwipe" }, outputs: { selectedIndexChange: "selectedIndexChange", segmentSelect: "segmentSelect" }, host: { attributes: { "role": "group" }, properties: { "class": "this._modeCssClass", "class.sm": "this.isSmallSize" } }, viewQueries: [{ propertyName: "ionSegmentElement", first: true, predicate: IonSegment, descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<ion-segment\n [value]=\"value?.id\"\n [scrollable]=\"disableChangeOnSwipe || mode !== 'default'\"\n (ionChange)=\"onSegmentSelect($event.detail.value)\"\n (click)=\"preventOutsideClick($event)\"\n>\n <ng-container *ngFor=\"let item of items\">\n <ion-segment-button [value]=\"item.id\">\n {{ item.text }}\n <kirby-badge\n *ngIf=\"item.badge\"\n role=\"text\"\n [attr.aria-label]=\"item.badge.description\"\n [themeColor]=\"item.badge.themeColor\"\n >\n <ng-container *ngIf=\"item.badge.icon; else badgeContent\">\n <kirby-icon [name]=\"item.badge.icon\"></kirby-icon>\n </ng-container>\n <ng-template #badgeContent>\n {{ item.badge.content }}\n </ng-template>\n </kirby-badge>\n </ion-segment-button>\n </ng-container>\n</ion-segment>\n", styles: [":host{display:block;-webkit-user-select:none;user-select:none;--kirby-badge-position: absolute;--kirby-badge-top: -8px;--kirby-badge-right: -16px;--kirby-badge-z-index: 2}:host.sm ion-segment-button{min-height:32px;font-size:12px;--padding-start: 16px;--padding-end: 16px;--kirby-badge-right: -8px}@media (hover: hover) and (pointer: fine){:host.sm ion-segment-button{outline:none;border-radius:999px}:host.sm ion-segment-button:focus{transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}:host.sm ion-segment-button:focus:not(:focus-visible){box-shadow:0 0 0 0 transparent}:host.sm ion-segment-button:focus-visible{transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}}:host.default-mode ion-segment{--background: var(--kirby-inputs-background-color);box-shadow:var(--kirby-inputs-elevation);overflow:visible;contain:none;width:-moz-fit-content;width:fit-content}:host.default-mode ion-segment-button{--color-hover: rgba(var(--kirby-black-rgb), .4)}:host.chip-mode ion-segment{--background: none;border-radius:0;padding:4px;gap:8px}@media (pointer: coarse){:host.chip-mode ion-segment{scrollbar-width:none}:host.chip-mode ion-segment::-webkit-scrollbar{display:none}}:host.chip-mode ion-segment-button{--background: var(--kirby-inputs-background-color);--indicator-transition: none}:host.chip-mode ion-segment-button::part(indicator){padding-inline:0}:host.compact ion-segment{--background: transparent}:host.compact ion-segment-button{--background: transparent;--padding-start: 12px;--padding-end: 12px}@media (hover: hover){:host.chip-mode ion-segment-button:hover,:host.compact ion-segment-button:hover{--state-layer-opacity: .12;--state-layer-background-color: var(--kirby-black);--background-hover: var(--state-layer-background-color);--background-hover-opacity: var(--state-layer-opacity)}}@media (hover: hover){:host.chip-mode ion-segment-button.segment-button-checked:hover,:host.compact ion-segment-button.segment-button-checked:hover{--state-layer-opacity: .16;--state-layer-background-color: var(--kirby-black-contrast);--background-hover: var(--state-layer-background-color);--background-hover-opacity: var(--state-layer-opacity)}}ion-segment{border-radius:999px;grid-auto-columns:max-content;box-sizing:border-box}ion-segment-button{position:relative;--border-radius: 999px;--border-style: none;--background: none;--color: var(--kirby-inputs-color);--indicator-color: var(--kirby-inputs-indicator-background-color);--color-checked: var(--kirby-inputs-indicator-color);--indicator-box-shadow: none;--indicator-transform: none;--padding-start: 24px;--padding-end: 24px;--margin-bottom: 0;--margin-end: 0;--margin-start: 0;--margin-top: 0;min-height:40px;min-width:-moz-fit-content;min-width:fit-content;font-weight:400;font-size:14px;text-transform:none;margin:0}@media (hover: hover) and (pointer: fine){ion-segment-button:focus-within::part(native){transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}}ion-segment-button:after{content:\"\";position:absolute;min-height:44px;min-width:44px;width:100%;height:100%;transform:translate(-50%,-50%);left:50%;top:50%}ion-segment-button::part(native){border-radius:var(--border-radius);contain:none;overflow:visible;opacity:1}ion-segment-button::part(native):after{transition:all 80ms linear 0ms;border-radius:var(--border-radius)}ion-segment-button::part(indicator){padding-inline:0}\n"], dependencies: [{ kind: "ngmodule", type: IconModule }, { kind: "component", type: i1.IconComponent, selector: "kirby-icon", inputs: ["size", "name", "customName"] }, { kind: "component", type: BadgeComponent, selector: "kirby-badge", inputs: ["text", "size"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IonSegment, selector: "ion-segment", inputs: ["color", "disabled", "mode", "scrollable", "selectOnFocus", "swipeGesture", "value"] }, { kind: "component", type: IonSegmentButton, selector: "ion-segment-button", inputs: ["disabled", "layout", "mode", "type", "value"] }] }); }
200
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SegmentedControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
201
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: SegmentedControlComponent, isStandalone: true, selector: "kirby-segmented-control", inputs: { mode: "mode", items: "items", selectedIndex: "selectedIndex", value: "value", size: "size", disableChangeOnSwipe: "disableChangeOnSwipe" }, outputs: { selectedIndexChange: "selectedIndexChange", segmentSelect: "segmentSelect" }, host: { attributes: { "role": "group" }, properties: { "class": "this._modeCssClass", "class.sm": "this.isSmallSize" } }, viewQueries: [{ propertyName: "ionSegmentElement", first: true, predicate: IonSegment, descendants: true, read: ElementRef, static: true }], ngImport: i0, template: "<ion-segment\n [value]=\"value?.id\"\n [scrollable]=\"disableChangeOnSwipe || mode !== 'default'\"\n (ionChange)=\"onSegmentSelect($event.detail.value)\"\n (click)=\"preventOutsideClick($event)\"\n>\n <ng-container *ngFor=\"let item of items\">\n <ion-segment-button [value]=\"item.id\">\n {{ item.text }}\n <kirby-badge\n *ngIf=\"item.badge\"\n role=\"text\"\n [attr.aria-label]=\"item.badge.description\"\n [themeColor]=\"item.badge.themeColor\"\n >\n <ng-container *ngIf=\"item.badge.icon; else badgeContent\">\n <kirby-icon [name]=\"item.badge.icon\"></kirby-icon>\n </ng-container>\n <ng-template #badgeContent>\n {{ item.badge.content }}\n </ng-template>\n </kirby-badge>\n </ion-segment-button>\n </ng-container>\n</ion-segment>\n", styles: [":host{display:block;-webkit-user-select:none;user-select:none;--kirby-badge-position: absolute;--kirby-badge-top: -8px;--kirby-badge-right: -16px;--kirby-badge-z-index: 2}:host.sm ion-segment-button{min-height:32px;font-size:12px;--padding-start: 16px;--padding-end: 16px;--kirby-badge-right: -8px}@media (hover: hover) and (pointer: fine){:host.sm ion-segment-button{outline:none;border-radius:999px}:host.sm ion-segment-button:focus{transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}:host.sm ion-segment-button:focus:not(:focus-visible){box-shadow:0 0 0 0 transparent}:host.sm ion-segment-button:focus-visible{transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}}:host.default-mode ion-segment{--background: var(--kirby-inputs-background-color);box-shadow:var(--kirby-inputs-elevation);overflow:visible;contain:none;width:fit-content}:host.default-mode ion-segment-button{--color-hover: rgba(var(--kirby-black-rgb), .4)}:host.chip-mode ion-segment{--background: none;border-radius:0;padding:4px;gap:8px}@media (pointer: coarse){:host.chip-mode ion-segment{scrollbar-width:none}:host.chip-mode ion-segment::-webkit-scrollbar{display:none}}:host.chip-mode ion-segment-button{--background: var(--kirby-inputs-background-color);--indicator-transition: none}:host.chip-mode ion-segment-button::part(indicator){padding-inline:0}:host.compact ion-segment{--background: transparent}:host.compact ion-segment-button{--background: transparent;--padding-start: 12px;--padding-end: 12px}@media (hover: hover){:host.chip-mode ion-segment-button:hover,:host.compact ion-segment-button:hover{--state-layer-opacity: .12;--state-layer-background-color: var(--kirby-black);--background-hover: var(--state-layer-background-color);--background-hover-opacity: var(--state-layer-opacity)}}@media (hover: hover){:host.chip-mode ion-segment-button.segment-button-checked:hover,:host.compact ion-segment-button.segment-button-checked:hover{--state-layer-opacity: .16;--state-layer-background-color: var(--kirby-black-contrast);--background-hover: var(--state-layer-background-color);--background-hover-opacity: var(--state-layer-opacity)}}ion-segment{border-radius:999px;grid-auto-columns:max-content;box-sizing:border-box}ion-segment-button{position:relative;--border-radius: 999px;--border-style: none;--background: none;--color: var(--kirby-inputs-color);--indicator-color: var(--kirby-inputs-indicator-background-color);--color-checked: var(--kirby-inputs-indicator-color);--indicator-box-shadow: none;--indicator-transform: none;--padding-start: 24px;--padding-end: 24px;--margin-bottom: 0;--margin-end: 0;--margin-start: 0;--margin-top: 0;min-height:40px;min-width:fit-content;font-weight:400;font-size:14px;text-transform:none;margin:0}@media (hover: hover) and (pointer: fine){ion-segment-button:focus-within::part(native){transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}}ion-segment-button:after{content:\"\";position:absolute;min-height:44px;min-width:44px;width:100%;height:100%;transform:translate(-50%,-50%);left:50%;top:50%}ion-segment-button::part(native){border-radius:var(--border-radius);contain:none;overflow:visible;opacity:1}ion-segment-button::part(native):after{transition:all 80ms linear 0ms;border-radius:var(--border-radius)}ion-segment-button::part(indicator){padding-inline:0}\n"], dependencies: [{ kind: "ngmodule", type: IconModule }, { kind: "component", type: i1.IconComponent, selector: "kirby-icon", inputs: ["size", "name", "customName"] }, { kind: "component", type: BadgeComponent, selector: "kirby-badge", inputs: ["text", "size"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IonSegment, selector: "ion-segment", inputs: ["color", "disabled", "mode", "scrollable", "selectOnFocus", "swipeGesture", "value"] }, { kind: "component", type: IonSegmentButton, selector: "ion-segment-button", inputs: ["disabled", "layout", "mode", "type", "value"] }] }); }
202
202
  }
203
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: SegmentedControlComponent, decorators: [{
203
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SegmentedControlComponent, decorators: [{
204
204
  type: Component,
205
- args: [{ standalone: true, imports: [IconModule, BadgeComponent, CommonModule, IonSegment, IonSegmentButton], selector: 'kirby-segmented-control', host: { role: 'group' }, template: "<ion-segment\n [value]=\"value?.id\"\n [scrollable]=\"disableChangeOnSwipe || mode !== 'default'\"\n (ionChange)=\"onSegmentSelect($event.detail.value)\"\n (click)=\"preventOutsideClick($event)\"\n>\n <ng-container *ngFor=\"let item of items\">\n <ion-segment-button [value]=\"item.id\">\n {{ item.text }}\n <kirby-badge\n *ngIf=\"item.badge\"\n role=\"text\"\n [attr.aria-label]=\"item.badge.description\"\n [themeColor]=\"item.badge.themeColor\"\n >\n <ng-container *ngIf=\"item.badge.icon; else badgeContent\">\n <kirby-icon [name]=\"item.badge.icon\"></kirby-icon>\n </ng-container>\n <ng-template #badgeContent>\n {{ item.badge.content }}\n </ng-template>\n </kirby-badge>\n </ion-segment-button>\n </ng-container>\n</ion-segment>\n", styles: [":host{display:block;-webkit-user-select:none;user-select:none;--kirby-badge-position: absolute;--kirby-badge-top: -8px;--kirby-badge-right: -16px;--kirby-badge-z-index: 2}:host.sm ion-segment-button{min-height:32px;font-size:12px;--padding-start: 16px;--padding-end: 16px;--kirby-badge-right: -8px}@media (hover: hover) and (pointer: fine){:host.sm ion-segment-button{outline:none;border-radius:999px}:host.sm ion-segment-button:focus{transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}:host.sm ion-segment-button:focus:not(:focus-visible){box-shadow:0 0 0 0 transparent}:host.sm ion-segment-button:focus-visible{transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}}:host.default-mode ion-segment{--background: var(--kirby-inputs-background-color);box-shadow:var(--kirby-inputs-elevation);overflow:visible;contain:none;width:-moz-fit-content;width:fit-content}:host.default-mode ion-segment-button{--color-hover: rgba(var(--kirby-black-rgb), .4)}:host.chip-mode ion-segment{--background: none;border-radius:0;padding:4px;gap:8px}@media (pointer: coarse){:host.chip-mode ion-segment{scrollbar-width:none}:host.chip-mode ion-segment::-webkit-scrollbar{display:none}}:host.chip-mode ion-segment-button{--background: var(--kirby-inputs-background-color);--indicator-transition: none}:host.chip-mode ion-segment-button::part(indicator){padding-inline:0}:host.compact ion-segment{--background: transparent}:host.compact ion-segment-button{--background: transparent;--padding-start: 12px;--padding-end: 12px}@media (hover: hover){:host.chip-mode ion-segment-button:hover,:host.compact ion-segment-button:hover{--state-layer-opacity: .12;--state-layer-background-color: var(--kirby-black);--background-hover: var(--state-layer-background-color);--background-hover-opacity: var(--state-layer-opacity)}}@media (hover: hover){:host.chip-mode ion-segment-button.segment-button-checked:hover,:host.compact ion-segment-button.segment-button-checked:hover{--state-layer-opacity: .16;--state-layer-background-color: var(--kirby-black-contrast);--background-hover: var(--state-layer-background-color);--background-hover-opacity: var(--state-layer-opacity)}}ion-segment{border-radius:999px;grid-auto-columns:max-content;box-sizing:border-box}ion-segment-button{position:relative;--border-radius: 999px;--border-style: none;--background: none;--color: var(--kirby-inputs-color);--indicator-color: var(--kirby-inputs-indicator-background-color);--color-checked: var(--kirby-inputs-indicator-color);--indicator-box-shadow: none;--indicator-transform: none;--padding-start: 24px;--padding-end: 24px;--margin-bottom: 0;--margin-end: 0;--margin-start: 0;--margin-top: 0;min-height:40px;min-width:-moz-fit-content;min-width:fit-content;font-weight:400;font-size:14px;text-transform:none;margin:0}@media (hover: hover) and (pointer: fine){ion-segment-button:focus-within::part(native){transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}}ion-segment-button:after{content:\"\";position:absolute;min-height:44px;min-width:44px;width:100%;height:100%;transform:translate(-50%,-50%);left:50%;top:50%}ion-segment-button::part(native){border-radius:var(--border-radius);contain:none;overflow:visible;opacity:1}ion-segment-button::part(native):after{transition:all 80ms linear 0ms;border-radius:var(--border-radius)}ion-segment-button::part(indicator){padding-inline:0}\n"] }]
205
+ args: [{ standalone: true, imports: [IconModule, BadgeComponent, CommonModule, IonSegment, IonSegmentButton], selector: 'kirby-segmented-control', host: { role: 'group' }, template: "<ion-segment\n [value]=\"value?.id\"\n [scrollable]=\"disableChangeOnSwipe || mode !== 'default'\"\n (ionChange)=\"onSegmentSelect($event.detail.value)\"\n (click)=\"preventOutsideClick($event)\"\n>\n <ng-container *ngFor=\"let item of items\">\n <ion-segment-button [value]=\"item.id\">\n {{ item.text }}\n <kirby-badge\n *ngIf=\"item.badge\"\n role=\"text\"\n [attr.aria-label]=\"item.badge.description\"\n [themeColor]=\"item.badge.themeColor\"\n >\n <ng-container *ngIf=\"item.badge.icon; else badgeContent\">\n <kirby-icon [name]=\"item.badge.icon\"></kirby-icon>\n </ng-container>\n <ng-template #badgeContent>\n {{ item.badge.content }}\n </ng-template>\n </kirby-badge>\n </ion-segment-button>\n </ng-container>\n</ion-segment>\n", styles: [":host{display:block;-webkit-user-select:none;user-select:none;--kirby-badge-position: absolute;--kirby-badge-top: -8px;--kirby-badge-right: -16px;--kirby-badge-z-index: 2}:host.sm ion-segment-button{min-height:32px;font-size:12px;--padding-start: 16px;--padding-end: 16px;--kirby-badge-right: -8px}@media (hover: hover) and (pointer: fine){:host.sm ion-segment-button{outline:none;border-radius:999px}:host.sm ion-segment-button:focus{transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}:host.sm ion-segment-button:focus:not(:focus-visible){box-shadow:0 0 0 0 transparent}:host.sm ion-segment-button:focus-visible{transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}}:host.default-mode ion-segment{--background: var(--kirby-inputs-background-color);box-shadow:var(--kirby-inputs-elevation);overflow:visible;contain:none;width:fit-content}:host.default-mode ion-segment-button{--color-hover: rgba(var(--kirby-black-rgb), .4)}:host.chip-mode ion-segment{--background: none;border-radius:0;padding:4px;gap:8px}@media (pointer: coarse){:host.chip-mode ion-segment{scrollbar-width:none}:host.chip-mode ion-segment::-webkit-scrollbar{display:none}}:host.chip-mode ion-segment-button{--background: var(--kirby-inputs-background-color);--indicator-transition: none}:host.chip-mode ion-segment-button::part(indicator){padding-inline:0}:host.compact ion-segment{--background: transparent}:host.compact ion-segment-button{--background: transparent;--padding-start: 12px;--padding-end: 12px}@media (hover: hover){:host.chip-mode ion-segment-button:hover,:host.compact ion-segment-button:hover{--state-layer-opacity: .12;--state-layer-background-color: var(--kirby-black);--background-hover: var(--state-layer-background-color);--background-hover-opacity: var(--state-layer-opacity)}}@media (hover: hover){:host.chip-mode ion-segment-button.segment-button-checked:hover,:host.compact ion-segment-button.segment-button-checked:hover{--state-layer-opacity: .16;--state-layer-background-color: var(--kirby-black-contrast);--background-hover: var(--state-layer-background-color);--background-hover-opacity: var(--state-layer-opacity)}}ion-segment{border-radius:999px;grid-auto-columns:max-content;box-sizing:border-box}ion-segment-button{position:relative;--border-radius: 999px;--border-style: none;--background: none;--color: var(--kirby-inputs-color);--indicator-color: var(--kirby-inputs-indicator-background-color);--color-checked: var(--kirby-inputs-indicator-color);--indicator-box-shadow: none;--indicator-transform: none;--padding-start: 24px;--padding-end: 24px;--margin-bottom: 0;--margin-end: 0;--margin-start: 0;--margin-top: 0;min-height:40px;min-width:fit-content;font-weight:400;font-size:14px;text-transform:none;margin:0}@media (hover: hover) and (pointer: fine){ion-segment-button:focus-within::part(native){transition:all 80ms linear 0ms;box-shadow:0 0 0 2px var(--kirby-background-color),0 0 0 4px #4d90fe}}ion-segment-button:after{content:\"\";position:absolute;min-height:44px;min-width:44px;width:100%;height:100%;transform:translate(-50%,-50%);left:50%;top:50%}ion-segment-button::part(native){border-radius:var(--border-radius);contain:none;overflow:visible;opacity:1}ion-segment-button::part(native):after{transition:all 80ms linear 0ms;border-radius:var(--border-radius)}ion-segment-button::part(indicator){padding-inline:0}\n"] }]
206
206
  }], propDecorators: { ionSegmentElement: [{
207
207
  type: ViewChild,
208
208
  args: [IonSegment, { static: true, read: ElementRef }]
@@ -282,10 +282,10 @@ class PageLocalNavigationComponent {
282
282
  });
283
283
  }
284
284
  }
285
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: PageLocalNavigationComponent, deps: [{ token: i1$2.WindowRef }], target: i0.ɵɵFactoryTarget.Component }); }
286
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.9", type: PageLocalNavigationComponent, isStandalone: true, selector: "kirby-page-local-navigation", inputs: { items: "items", selectedIndex: "selectedIndex" }, outputs: { selectedIndexChange: "selectedIndexChange" }, viewQueries: [{ propertyName: "tabBarElementRef", first: true, predicate: ["tabBar"], descendants: true }], ngImport: i0, template: "<div class=\"container\">\n <div class=\"tab-bar\" #tabBar>\n <div\n class=\"tab-item\"\n *ngFor=\"let item of items; let i = index\"\n (click)=\"onTabChange(i)\"\n [ngClass]=\"i === selectedIndex ? 'selected' : ''\"\n [tabIndex]=\"0\"\n (keydown.enter)=\"onTabChange(i)\"\n (keydown.arrowLeft)=\"focusNext(i - 1)\"\n (keydown.arrowRight)=\"focusNext(i + 1)\"\n >\n <div class=\"tab-item-inner\" [class.extended]=\"!!item.badge\">\n <span [attr.text]=\"item.text\">{{ item.text }}</span>\n <ng-container *ngIf=\"item.badge; let badge\">\n <kirby-badge\n role=\"text\"\n [attr.aria-label]=\"badge.description\"\n [themeColor]=\"badge.themeColor\"\n >\n <ng-container *ngIf=\"badge.content.name; else badgeTextContent\">\n <kirby-icon\n *ngIf=\"badge.content.isCustom; else defaultIconName\"\n [customName]=\"badge.content.name\"\n ></kirby-icon>\n <ng-template #defaultIconName>\n <kirby-icon [name]=\"badge.content.name\"></kirby-icon>\n </ng-template>\n </ng-container>\n <ng-template #badgeTextContent>\n {{ badge.content.text }}\n </ng-template>\n </kirby-badge>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n", styles: [".tab-bar{position:relative;margin:0 auto;display:flex;gap:12px;align-items:center;justify-content:left;flex-wrap:nowrap;overflow:scroll hidden;-webkit-overflow-scrolling:auto;scrollbar-width:none}.tab-bar::-webkit-scrollbar{display:none}.container{position:relative;background-color:var(--kirby-background-color);max-width:var(--page-content-max-width, 792px)}.container:before{content:\"\";background-color:var(--kirby-medium);position:absolute;height:1px;bottom:0;z-index:1;left:0;width:100%}@media (max-width: 824px){.container:before{left:calc(-1 * var(--padding-start, 16px));width:calc(100% + var(--padding-start, 16px) * 2)}}.tab-item{position:relative;cursor:pointer;box-sizing:border-box;outline:none;padding-bottom:2px}.tab-item.selected:before{content:\"\";width:100%;background-color:var(--kirby-dark);position:absolute;border-radius:1px;height:2px;bottom:0;z-index:2}.tab-item.selected,.tab-item:focus,.tab-item:hover{font-weight:700}.tab-item-inner{display:flex;align-items:center;justify-content:center;white-space:nowrap;margin:16px;-webkit-user-select:none;user-select:none}.tab-item-inner kirby-badge{margin-left:4px}.tab-item-inner>span{max-width:100px;overflow:hidden;text-overflow:ellipsis;line-height:24px}.tab-item-inner>span:before{display:block;content:attr(text);font-weight:700;height:0;overflow:hidden;visibility:hidden}\n"], dependencies: [{ kind: "component", type: BadgeComponent, selector: "kirby-badge", inputs: ["text", "size"] }, { kind: "ngmodule", type: IconModule }, { kind: "component", type: i1.IconComponent, selector: "kirby-icon", inputs: ["size", "name", "customName"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
285
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PageLocalNavigationComponent, deps: [{ token: i1$2.WindowRef }], target: i0.ɵɵFactoryTarget.Component }); }
286
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: PageLocalNavigationComponent, isStandalone: true, selector: "kirby-page-local-navigation", inputs: { items: "items", selectedIndex: "selectedIndex" }, outputs: { selectedIndexChange: "selectedIndexChange" }, viewQueries: [{ propertyName: "tabBarElementRef", first: true, predicate: ["tabBar"], descendants: true }], ngImport: i0, template: "<div class=\"container\">\n <div class=\"tab-bar\" #tabBar>\n <div\n class=\"tab-item\"\n *ngFor=\"let item of items; let i = index\"\n (click)=\"onTabChange(i)\"\n [ngClass]=\"i === selectedIndex ? 'selected' : ''\"\n [tabIndex]=\"0\"\n (keydown.enter)=\"onTabChange(i)\"\n (keydown.arrowLeft)=\"focusNext(i - 1)\"\n (keydown.arrowRight)=\"focusNext(i + 1)\"\n >\n <div class=\"tab-item-inner\" [class.extended]=\"!!item.badge\">\n <span [attr.text]=\"item.text\">{{ item.text }}</span>\n <ng-container *ngIf=\"item.badge; let badge\">\n <kirby-badge\n role=\"text\"\n [attr.aria-label]=\"badge.description\"\n [themeColor]=\"badge.themeColor\"\n >\n <ng-container *ngIf=\"badge.content.name; else badgeTextContent\">\n <kirby-icon\n *ngIf=\"badge.content.isCustom; else defaultIconName\"\n [customName]=\"badge.content.name\"\n ></kirby-icon>\n <ng-template #defaultIconName>\n <kirby-icon [name]=\"badge.content.name\"></kirby-icon>\n </ng-template>\n </ng-container>\n <ng-template #badgeTextContent>\n {{ badge.content.text }}\n </ng-template>\n </kirby-badge>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n", styles: [".tab-bar{position:relative;margin:0 auto;display:flex;gap:12px;align-items:center;justify-content:left;flex-wrap:nowrap;overflow:scroll hidden;-webkit-overflow-scrolling:auto;scrollbar-width:none}.tab-bar::-webkit-scrollbar{display:none}.container{position:relative;background-color:var(--kirby-background-color);max-width:var(--page-content-max-width, 792px)}.container:before{content:\"\";background-color:var(--kirby-medium);position:absolute;height:1px;bottom:0;z-index:1;left:0;width:100%}@media (max-width: 824px){.container:before{left:calc(-1 * var(--padding-start, 16px));width:calc(100% + var(--padding-start, 16px) * 2)}}.tab-item{position:relative;cursor:pointer;box-sizing:border-box;outline:none;padding-bottom:2px}.tab-item.selected:before{content:\"\";width:100%;background-color:var(--kirby-dark);position:absolute;border-radius:1px;height:2px;bottom:0;z-index:2}.tab-item.selected,.tab-item:focus,.tab-item:hover{font-weight:700}.tab-item-inner{display:flex;align-items:center;justify-content:center;white-space:nowrap;margin:16px;-webkit-user-select:none;user-select:none}.tab-item-inner kirby-badge{margin-left:4px}.tab-item-inner>span{max-width:100px;overflow:hidden;text-overflow:ellipsis;line-height:24px}.tab-item-inner>span:before{display:block;content:attr(text);font-weight:700;height:0;overflow:hidden;visibility:hidden}\n"], dependencies: [{ kind: "component", type: BadgeComponent, selector: "kirby-badge", inputs: ["text", "size"] }, { kind: "ngmodule", type: IconModule }, { kind: "component", type: i1.IconComponent, selector: "kirby-icon", inputs: ["size", "name", "customName"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
287
287
  }
288
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: PageLocalNavigationComponent, decorators: [{
288
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PageLocalNavigationComponent, decorators: [{
289
289
  type: Component,
290
290
  args: [{ standalone: true, imports: [BadgeComponent, IconModule, CommonModule], selector: 'kirby-page-local-navigation', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"container\">\n <div class=\"tab-bar\" #tabBar>\n <div\n class=\"tab-item\"\n *ngFor=\"let item of items; let i = index\"\n (click)=\"onTabChange(i)\"\n [ngClass]=\"i === selectedIndex ? 'selected' : ''\"\n [tabIndex]=\"0\"\n (keydown.enter)=\"onTabChange(i)\"\n (keydown.arrowLeft)=\"focusNext(i - 1)\"\n (keydown.arrowRight)=\"focusNext(i + 1)\"\n >\n <div class=\"tab-item-inner\" [class.extended]=\"!!item.badge\">\n <span [attr.text]=\"item.text\">{{ item.text }}</span>\n <ng-container *ngIf=\"item.badge; let badge\">\n <kirby-badge\n role=\"text\"\n [attr.aria-label]=\"badge.description\"\n [themeColor]=\"badge.themeColor\"\n >\n <ng-container *ngIf=\"badge.content.name; else badgeTextContent\">\n <kirby-icon\n *ngIf=\"badge.content.isCustom; else defaultIconName\"\n [customName]=\"badge.content.name\"\n ></kirby-icon>\n <ng-template #defaultIconName>\n <kirby-icon [name]=\"badge.content.name\"></kirby-icon>\n </ng-template>\n </ng-container>\n <ng-template #badgeTextContent>\n {{ badge.content.text }}\n </ng-template>\n </kirby-badge>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n", styles: [".tab-bar{position:relative;margin:0 auto;display:flex;gap:12px;align-items:center;justify-content:left;flex-wrap:nowrap;overflow:scroll hidden;-webkit-overflow-scrolling:auto;scrollbar-width:none}.tab-bar::-webkit-scrollbar{display:none}.container{position:relative;background-color:var(--kirby-background-color);max-width:var(--page-content-max-width, 792px)}.container:before{content:\"\";background-color:var(--kirby-medium);position:absolute;height:1px;bottom:0;z-index:1;left:0;width:100%}@media (max-width: 824px){.container:before{left:calc(-1 * var(--padding-start, 16px));width:calc(100% + var(--padding-start, 16px) * 2)}}.tab-item{position:relative;cursor:pointer;box-sizing:border-box;outline:none;padding-bottom:2px}.tab-item.selected:before{content:\"\";width:100%;background-color:var(--kirby-dark);position:absolute;border-radius:1px;height:2px;bottom:0;z-index:2}.tab-item.selected,.tab-item:focus,.tab-item:hover{font-weight:700}.tab-item-inner{display:flex;align-items:center;justify-content:center;white-space:nowrap;margin:16px;-webkit-user-select:none;user-select:none}.tab-item-inner kirby-badge{margin-left:4px}.tab-item-inner>span{max-width:100px;overflow:hidden;text-overflow:ellipsis;line-height:24px}.tab-item-inner>span:before{display:block;content:attr(text);font-weight:700;height:0;overflow:hidden;visibility:hidden}\n"] }]
291
291
  }], ctorParameters: () => [{ type: i1$2.WindowRef }], propDecorators: { items: [{
@@ -313,10 +313,10 @@ class KeyHandlerDirective {
313
313
  hostElement.click();
314
314
  }
315
315
  }
316
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: KeyHandlerDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
317
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.9", type: KeyHandlerDirective, selector: "[keyHandler]", host: { listeners: { "keyup": "keyEvent($event)" } }, ngImport: i0 }); }
316
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: KeyHandlerDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
317
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: KeyHandlerDirective, selector: "[keyHandler]", host: { listeners: { "keyup": "keyEvent($event)" } }, ngImport: i0 }); }
318
318
  }
319
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: KeyHandlerDirective, decorators: [{
319
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: KeyHandlerDirective, decorators: [{
320
320
  type: Directive,
321
321
  args: [{
322
322
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -339,10 +339,10 @@ class ModalRouterLinkDirective {
339
339
  this.modalNavigationService.navigateToModal(this.path, typeof this.queryParams !== 'string' ? this.queryParams : null, this.alertConfig || null);
340
340
  return false;
341
341
  }
342
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ModalRouterLinkDirective, deps: [{ token: i1$1.ModalNavigationService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
343
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.9", type: ModalRouterLinkDirective, selector: "[kirbyModalRouterLink]", inputs: { path: ["kirbyModalRouterLink", "path"], queryParams: ["kirbyModalQueryParams", "queryParams"], alertConfig: ["kirbyAlertConfig", "alertConfig"] }, host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
342
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ModalRouterLinkDirective, deps: [{ token: i1$1.ModalNavigationService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
343
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: ModalRouterLinkDirective, selector: "[kirbyModalRouterLink]", inputs: { path: ["kirbyModalRouterLink", "path"], queryParams: ["kirbyModalQueryParams", "queryParams"], alertConfig: ["kirbyAlertConfig", "alertConfig"] }, host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
344
344
  }
345
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ModalRouterLinkDirective, decorators: [{
345
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ModalRouterLinkDirective, decorators: [{
346
346
  type: Directive,
347
347
  args: [{
348
348
  selector: `[kirbyModalRouterLink]`,
@@ -454,8 +454,8 @@ class KirbyModule {
454
454
  constructor(modalController, config) {
455
455
  modalController.initialize(config && config.moduleRootRoutePath);
456
456
  }
457
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: KirbyModule, deps: [{ token: i1$1.ModalController }, { token: ConfigToken, optional: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
458
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.9", ngImport: i0, type: KirbyModule, declarations: [ModalRouterLinkDirective, KeyHandlerDirective], imports: [CommonModule, RouterModule, KirbyIonicModule, KirbyAppModule,
457
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: KirbyModule, deps: [{ token: i1$1.ModalController }, { token: ConfigToken, optional: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
458
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: KirbyModule, declarations: [ModalRouterLinkDirective, KeyHandlerDirective], imports: [CommonModule, RouterModule, KirbyIonicModule, KirbyAppModule,
459
459
  RouterOutletModule,
460
460
  PageModule,
461
461
  HeaderModule,
@@ -564,7 +564,7 @@ class KirbyModule {
564
564
  FlagComponent,
565
565
  BadgeComponent,
566
566
  ModalComponent, ModalRouterLinkDirective] }); }
567
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: KirbyModule, providers: providers, imports: [CommonModule, RouterModule, KirbyIonicModule, KirbyAppModule,
567
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: KirbyModule, providers: providers, imports: [CommonModule, RouterModule, KirbyIonicModule, KirbyAppModule,
568
568
  RouterOutletModule,
569
569
  PageModule,
570
570
  HeaderModule,
@@ -638,7 +638,7 @@ class KirbyModule {
638
638
  HeaderModule,
639
639
  KirbyModalModule] }); }
640
640
  }
641
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: KirbyModule, decorators: [{
641
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: KirbyModule, decorators: [{
642
642
  type: NgModule,
643
643
  args: [{
644
644
  imports: [CommonModule, RouterModule, KirbyIonicModule, ...importedModules],
@@ -659,11 +659,11 @@ const COMPONENT_DECLARATIONS = [PageLocalNavigationComponent];
659
659
  * @see KirbyModule
660
660
  */
661
661
  class KirbyExperimentalModule {
662
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: KirbyExperimentalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
663
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.9", ngImport: i0, type: KirbyExperimentalModule, imports: [CommonModule, KirbyModule, PageLocalNavigationComponent], exports: [PageLocalNavigationComponent] }); }
664
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: KirbyExperimentalModule, imports: [CommonModule, KirbyModule, PageLocalNavigationComponent] }); }
662
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: KirbyExperimentalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
663
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: KirbyExperimentalModule, imports: [CommonModule, KirbyModule, PageLocalNavigationComponent], exports: [PageLocalNavigationComponent] }); }
664
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: KirbyExperimentalModule, imports: [CommonModule, KirbyModule, PageLocalNavigationComponent] }); }
665
665
  }
666
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: KirbyExperimentalModule, decorators: [{
666
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: KirbyExperimentalModule, decorators: [{
667
667
  type: NgModule,
668
668
  args: [{
669
669
  imports: [CommonModule, KirbyModule, PageLocalNavigationComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"kirbydesign-designsystem.mjs","sources":["../../../../libs/designsystem/src/lib/components/segmented-control/segmented-control.component.ts","../../../../libs/designsystem/src/lib/components/segmented-control/segmented-control.component.html","../../../../libs/designsystem/src/lib/components/page-local-navigation/page-local-navigation.component.ts","../../../../libs/designsystem/src/lib/components/page-local-navigation/page-local-navigation.component.html","../../../../libs/designsystem/src/lib/components/index.ts","../../../../libs/designsystem/src/lib/directives/key-handler/key-handler.directive.ts","../../../../libs/designsystem/src/lib/directives/modal-router-link/modal-router-link.directive.ts","../../../../libs/designsystem/src/lib/kirby.module.ts","../../../../libs/designsystem/src/lib/kirby-experimental.module.ts","../../../../libs/designsystem/src/kirbydesign-designsystem.ts"],"sourcesContent":["import {\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { IconModule } from '@kirbydesign/designsystem/icon';\nimport { BadgeComponent } from '@kirbydesign/designsystem/badge';\n\nimport { IonSegment, IonSegmentButton } from '@ionic/angular/standalone';\nimport { CommonModule } from '@angular/common';\nimport { SegmentItem } from './segment-item';\n\nexport enum SegmentedControlMode {\n chip = 'chip',\n compactChip = 'compactChip',\n default = 'default',\n}\n\n// Workaround until TS 5.4 official NoInfer\n// https://github.com/millsp/ts-toolbelt/blob/master/sources/Function/NoInfer.ts\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype NoInfer<T> = [T][T extends any ? 0 : never];\n\n@Component({\n standalone: true,\n imports: [IconModule, BadgeComponent, CommonModule, IonSegment, IonSegmentButton],\n selector: 'kirby-segmented-control',\n templateUrl: './segmented-control.component.html',\n styleUrls: ['./segmented-control.component.scss'],\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: { role: 'group' },\n})\nexport class SegmentedControlComponent<TItem extends SegmentItem = SegmentItem> {\n @ViewChild(IonSegment, { static: true, read: ElementRef })\n private ionSegmentElement: ElementRef<HTMLIonSegmentElement>;\n\n /**\n * Ensure that the click actually did originate from within the segment-button.\n * We do not want to react to clicks on e.g. segment-btn-wrapper or badge.\n */\n preventOutsideClick(event: TouchEvent) {\n if (event.target instanceof HTMLElement) {\n const targetIsInSegmentBtn = !!event.target.closest('ion-segment-button');\n if (!targetIsInSegmentBtn) {\n event.stopImmediatePropagation();\n }\n }\n }\n\n @Input() mode: SegmentedControlMode | `${SegmentedControlMode}` = SegmentedControlMode.default;\n\n @HostBinding('class')\n get _modeCssClass() {\n return {\n [SegmentedControlMode.chip]: 'chip-mode',\n [SegmentedControlMode.default]: 'default-mode',\n [SegmentedControlMode.compactChip]: 'compact chip-mode',\n }[this.mode];\n }\n\n private _items: TItem[] = [];\n get items(): TItem[] {\n return this._items;\n }\n\n @Input() set items(value: TItem[]) {\n this._items = value || [];\n this._value = this.items[this.selectedIndex];\n this.ensureIonSegmentSelected();\n }\n\n /**\n * After upgrading to Ionic standalone components (Ionic v.7.6.6)\n * there is a lifecycle bug between Angular/Ionic/Stencil that prevents\n * the value of the segment component to be reflected in the checked state\n * of it's slotted segment buttons.\n * This has been patched here: https://github.com/ionic-team/ionic-framework/pull/28837\n * However the patch doesn't fix the problem if `items` are updated after first initialization\n * and the ion-segment-button(s) are re-rerendered.\n */\n private ensureIonSegmentSelected() {\n const ionSegment = this.ionSegmentElement.nativeElement;\n const ionSelectEvent = ionSegment['ionSelect'];\n if (this._value && typeof ionSelectEvent?.emit === 'function') {\n // Ensure changes has been reflected to the DOM:\n setTimeout(() => {\n const selectedSegmentButton = ionSegment.querySelector(\n 'ion-segment-button.segment-button-checked'\n );\n if (selectedSegmentButton) return; // Nothing to patch\n\n ionSelectEvent.emit({ value: this._value.id });\n });\n }\n }\n\n private _selectedIndex: number = -1;\n get selectedIndex(): number {\n return this._selectedIndex;\n }\n\n @Input() set selectedIndex(index: number) {\n if (index !== this._selectedIndex) {\n this._selectedIndex = index;\n this._value = this.items[this.selectedIndex];\n this.selectedIndexChange.emit(this.selectedIndex);\n }\n }\n\n @Output() selectedIndexChange = new EventEmitter<number>();\n\n private _value: NoInfer<TItem>;\n get value(): NoInfer<TItem> {\n return this._value;\n }\n\n @Input() set value(value: NoInfer<TItem>) {\n this.selectedIndex = this.items.indexOf(value);\n }\n\n @HostBinding('class.sm')\n isSmallSize: boolean;\n\n @Input() set size(size: 'sm' | 'md') {\n this.isSmallSize = size === 'sm';\n }\n\n private _disableChangeOnSwipe: boolean = false;\n get disableChangeOnSwipe(): boolean {\n return this._disableChangeOnSwipe;\n }\n\n @Input() set disableChangeOnSwipe(value: boolean) {\n this._disableChangeOnSwipe = value;\n }\n\n @Output() segmentSelect = new EventEmitter<TItem>();\n\n onSegmentSelect(selectedId: string) {\n const selectedItemIndex = this.items.findIndex((item) => selectedId === item.id);\n\n if (selectedItemIndex !== this.selectedIndex) {\n this.selectedIndex = selectedItemIndex;\n setTimeout(() => {\n this.segmentSelect.emit(this.value);\n });\n }\n }\n}\n","<ion-segment\n [value]=\"value?.id\"\n [scrollable]=\"disableChangeOnSwipe || mode !== 'default'\"\n (ionChange)=\"onSegmentSelect($event.detail.value)\"\n (click)=\"preventOutsideClick($event)\"\n>\n <ng-container *ngFor=\"let item of items\">\n <ion-segment-button [value]=\"item.id\">\n {{ item.text }}\n <kirby-badge\n *ngIf=\"item.badge\"\n role=\"text\"\n [attr.aria-label]=\"item.badge.description\"\n [themeColor]=\"item.badge.themeColor\"\n >\n <ng-container *ngIf=\"item.badge.icon; else badgeContent\">\n <kirby-icon [name]=\"item.badge.icon\"></kirby-icon>\n </ng-container>\n <ng-template #badgeContent>\n {{ item.badge.content }}\n </ng-template>\n </kirby-badge>\n </ion-segment-button>\n </ng-container>\n</ion-segment>\n","import { CommonModule } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { WindowRef } from '@kirbydesign/designsystem/types';\nimport { IconModule } from '@kirbydesign/designsystem/icon';\nimport { BadgeComponent } from '@kirbydesign/designsystem/badge';\nimport { LocalNavigationItem } from './page-local-navigation-item';\n\n@Component({\n standalone: true,\n imports: [BadgeComponent, IconModule, CommonModule],\n selector: 'kirby-page-local-navigation',\n templateUrl: './page-local-navigation.component.html',\n styleUrls: ['./page-local-navigation.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PageLocalNavigationComponent implements AfterViewInit {\n private readonly DEBOUNCE_TIME_MS = 250;\n\n @Input() items: LocalNavigationItem[] = [];\n @Input() selectedIndex = 0;\n\n @Output() selectedIndexChange = new EventEmitter<number>();\n\n @ViewChild('tabBar') tabBarElementRef?: ElementRef<HTMLElement>;\n private get tabBarNativeElement(): HTMLElement | undefined {\n return this.tabBarElementRef?.nativeElement;\n }\n\n constructor(private window: WindowRef) {\n console.warn(\n 'Kirby Local Navigation is deprecated, and will be removed in Kirby v10. It is replaced by Kirby Tab Navigation with identical functionality, but with more flexibility and an improved API.'\n );\n }\n\n ngAfterViewInit(): void {\n setTimeout(() => {\n this.scrollToSelectedTab(this.selectedIndex);\n }, this.DEBOUNCE_TIME_MS);\n }\n\n onTabChange(index: number): void {\n if (this.selectedIndex !== index) {\n this.selectedIndex = index;\n this.scrollToSelectedTab(index);\n this.selectedIndexChange.emit(index);\n }\n }\n\n private getSelectedItemElement(index: number): HTMLElement | undefined {\n const tabBarElement = this.tabBarNativeElement;\n\n if (tabBarElement) {\n return tabBarElement.children.item(index) as HTMLElement;\n }\n }\n\n focusNext(index: number): void {\n const tabBarElement = this.tabBarNativeElement;\n if (tabBarElement) {\n const next = tabBarElement.children.item(index) as HTMLElement;\n next?.focus({ preventScroll: false });\n }\n }\n\n private scrollToSelectedTab(index: number): void {\n const tabBarElement = this.tabBarNativeElement;\n const selectedTabElement = this.getSelectedItemElement(index);\n\n if (tabBarElement && selectedTabElement) {\n const selectedTabElementWidth = selectedTabElement.getBoundingClientRect().width;\n const selectedTabElementOffsetLeft = selectedTabElement.offsetLeft;\n const tabBarElementWidth = tabBarElement.getBoundingClientRect().width;\n\n this.window.nativeWindow.requestAnimationFrame(() => {\n tabBarElement?.scrollTo({\n behavior: 'smooth',\n left: Math.max(\n 0,\n selectedTabElementOffsetLeft - (tabBarElementWidth - selectedTabElementWidth) / 2\n ),\n });\n });\n }\n }\n}\n","<div class=\"container\">\n <div class=\"tab-bar\" #tabBar>\n <div\n class=\"tab-item\"\n *ngFor=\"let item of items; let i = index\"\n (click)=\"onTabChange(i)\"\n [ngClass]=\"i === selectedIndex ? 'selected' : ''\"\n [tabIndex]=\"0\"\n (keydown.enter)=\"onTabChange(i)\"\n (keydown.arrowLeft)=\"focusNext(i - 1)\"\n (keydown.arrowRight)=\"focusNext(i + 1)\"\n >\n <div class=\"tab-item-inner\" [class.extended]=\"!!item.badge\">\n <span [attr.text]=\"item.text\">{{ item.text }}</span>\n <ng-container *ngIf=\"item.badge; let badge\">\n <kirby-badge\n role=\"text\"\n [attr.aria-label]=\"badge.description\"\n [themeColor]=\"badge.themeColor\"\n >\n <ng-container *ngIf=\"badge.content.name; else badgeTextContent\">\n <kirby-icon\n *ngIf=\"badge.content.isCustom; else defaultIconName\"\n [customName]=\"badge.content.name\"\n ></kirby-icon>\n <ng-template #defaultIconName>\n <kirby-icon [name]=\"badge.content.name\"></kirby-icon>\n </ng-template>\n </ng-container>\n <ng-template #badgeTextContent>\n {{ badge.content.text }}\n </ng-template>\n </kirby-badge>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n","/* prettier-ignore */\nexport { SegmentedControlComponent, SegmentedControlMode} from './segmented-control/segmented-control.component'; // See issue #1555 for prettier-ignore explanation\nexport { SegmentItem } from './segmented-control/segment-item';\n\nexport * from './page-local-navigation';\n","import { Directive, ElementRef, HostListener } from '@angular/core';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: `[keyHandler]`,\n})\nexport class KeyHandlerDirective {\n constructor(private element: ElementRef) {}\n\n @HostListener('keyup', ['$event'])\n keyEvent(event: KeyboardEvent) {\n if (event.key === ' ' || event.key === 'Enter' || event.key === 'Spacebar') {\n // Prevent the default action to stop scrolling when space is pressed\n event.preventDefault();\n\n const hostElement = <HTMLElement>this.element.nativeElement;\n hostElement.click();\n }\n }\n}\n","import { Directive, ElementRef, HostListener, Input, OnInit } from '@angular/core';\nimport { Params } from '@angular/router';\nimport { AlertConfig, ModalNavigationService } from '@kirbydesign/designsystem/modal';\n\n@Directive({\n selector: `[kirbyModalRouterLink]`,\n})\nexport class ModalRouterLinkDirective implements OnInit {\n constructor(\n private modalNavigationService: ModalNavigationService,\n private elementRef: ElementRef\n ) {}\n\n ngOnInit(): void {\n this.elementRef.nativeElement.setAttribute('modal-router-link', '');\n }\n\n @Input('kirbyModalRouterLink') path: string | string[];\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('kirbyModalQueryParams') queryParams?: Params;\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('kirbyAlertConfig') alertConfig?: AlertConfig;\n\n @HostListener('click')\n onClick(): boolean {\n this.modalNavigationService.navigateToModal(\n this.path,\n typeof this.queryParams !== 'string' ? this.queryParams : null,\n this.alertConfig || null\n );\n return false;\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { Inject, InjectionToken, ModuleWithProviders, NgModule, Optional } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\nimport { CardModule } from '@kirbydesign/designsystem/card';\nimport { IconModule } from '@kirbydesign/designsystem/icon';\nimport { KirbyIonicModule } from '@kirbydesign/designsystem/kirby-ionic-module';\nimport {\n ComponentLoaderDirective,\n ResizeObserverFactory,\n ResizeObserverService,\n ThemeColorDirective,\n} from '@kirbydesign/designsystem/shared';\nimport { FlagComponent } from '@kirbydesign/designsystem/flag';\nimport { SpinnerModule } from '@kirbydesign/designsystem/spinner';\nimport { ToggleComponent } from '@kirbydesign/designsystem/toggle';\nimport { SectionHeaderComponent } from '@kirbydesign/designsystem/section-header';\nimport { ItemModule } from '@kirbydesign/designsystem/item';\nimport { SlideModule } from '@kirbydesign/designsystem/slide';\nimport { ToggleButtonModule } from '@kirbydesign/designsystem/toggle-button';\nimport { TabsModule } from '@kirbydesign/designsystem/tabs';\nimport { SlideButtonComponent } from '@kirbydesign/designsystem/slide-button';\nimport { RangeComponent } from '@kirbydesign/designsystem/range';\nimport { PopoverComponent } from '@kirbydesign/designsystem/popover';\nimport {\n LoadingOverlayComponent,\n LoadingOverlayService,\n} from '@kirbydesign/designsystem/loading-overlay';\nimport { DividerComponent } from '@kirbydesign/designsystem/divider';\nimport { CheckboxComponent } from '@kirbydesign/designsystem/checkbox';\nimport { AccordionModule } from '@kirbydesign/designsystem/accordion';\nimport { ItemSlidingComponent } from '@kirbydesign/designsystem/item-sliding';\nimport { ListModule } from '@kirbydesign/designsystem/list';\nimport { RadioModule } from '@kirbydesign/designsystem/radio';\nimport {\n AffixDirective,\n FormFieldModule,\n InputComponent,\n TextareaComponent,\n} from '@kirbydesign/designsystem/form-field';\nimport { AvatarComponent } from '@kirbydesign/designsystem/avatar';\nimport {\n ProgressCircleComponent,\n ProgressCircleRingComponent,\n} from '@kirbydesign/designsystem/progress-circle';\nimport { RouterOutletModule } from '@kirbydesign/designsystem/router-outlet';\n\nimport { ItemGroupComponent } from '@kirbydesign/designsystem/item-group';\nimport { ButtonComponent } from '@kirbydesign/designsystem/button';\nimport { CalendarComponent } from '@kirbydesign/designsystem/calendar';\nimport {\n ActionSheetComponent,\n ActionSheetHelper,\n AlertComponent,\n AlertHelper,\n CanDismissHelper,\n ModalCompactWrapperComponent,\n ModalController,\n ModalFooterComponent,\n ModalHelper,\n ModalWrapperComponent,\n} from '@kirbydesign/designsystem/modal';\nimport { ModalComponent } from '@kirbydesign/designsystem/modal';\nimport { KirbyModalModule } from '@kirbydesign/designsystem/modal/v2';\nimport { PageModule } from '@kirbydesign/designsystem/page';\nimport { HeaderModule } from '@kirbydesign/designsystem/header';\nimport { EmptyStateModule } from '@kirbydesign/designsystem/empty-state';\nimport { DropdownModule } from '@kirbydesign/designsystem/dropdown';\nimport { KirbyAppModule } from '@kirbydesign/designsystem/kirby-app';\nimport { ChartsModule } from '@kirbydesign/designsystem/chart';\nimport { FabSheetComponent } from '@kirbydesign/designsystem/fab-sheet';\nimport { DataTableModule } from '@kirbydesign/designsystem/data-table';\nimport { ReorderListComponent } from '@kirbydesign/designsystem/reorder-list';\n\nimport { ToastController, ToastHelper } from '@kirbydesign/designsystem/toast';\nimport { ActionGroupComponent } from '@kirbydesign/designsystem/action-group';\nimport { MenuComponent } from '@kirbydesign/designsystem/menu';\nimport { TabNavigationModule } from '@kirbydesign/designsystem/tab-navigation';\nimport { BadgeComponent } from '@kirbydesign/designsystem/badge';\nimport { SegmentedControlComponent } from './components/segmented-control/segmented-control.component';\nimport { KeyHandlerDirective } from './directives/key-handler/key-handler.directive';\nimport { ModalRouterLinkDirective } from './directives/modal-router-link/modal-router-link.directive';\n\nconst exportedDeclarations = [ModalRouterLinkDirective];\n\nconst declarations = [...exportedDeclarations, KeyHandlerDirective];\n\nconst standaloneComponents = [\n ActionGroupComponent,\n ItemGroupComponent,\n ModalCompactWrapperComponent,\n TextareaComponent,\n InputComponent,\n AffixDirective,\n DividerComponent,\n ThemeColorDirective,\n SegmentedControlComponent,\n AlertComponent,\n PopoverComponent,\n ProgressCircleRingComponent,\n ModalWrapperComponent,\n SectionHeaderComponent,\n RangeComponent,\n ItemSlidingComponent,\n ProgressCircleComponent,\n ReorderListComponent,\n LoadingOverlayComponent,\n FabSheetComponent,\n ToggleComponent,\n SlideButtonComponent,\n SegmentedControlComponent,\n CheckboxComponent,\n MenuComponent,\n ActionSheetComponent,\n ModalFooterComponent,\n AvatarComponent,\n CalendarComponent,\n ButtonComponent,\n ComponentLoaderDirective,\n FlagComponent,\n BadgeComponent,\n ModalComponent,\n];\nconst exportedModules = [\n KirbyAppModule,\n RouterOutletModule,\n PageModule,\n HeaderModule,\n TabNavigationModule,\n TabsModule,\n IconModule,\n ItemModule,\n ToggleButtonModule,\n ListModule,\n ChartsModule,\n SpinnerModule,\n DataTableModule,\n CardModule,\n RadioModule,\n EmptyStateModule,\n DropdownModule,\n FormFieldModule,\n SlideModule,\n AccordionModule,\n HeaderModule,\n KirbyModalModule,\n ...standaloneComponents,\n];\n\nconst allExports = [...exportedModules, ...exportedDeclarations];\n\nconst importedModules = [...exportedModules];\n\nconst providers = [\n ModalController,\n ActionSheetHelper,\n ModalHelper,\n AlertHelper,\n ToastHelper,\n ToastController,\n LoadingOverlayService,\n ResizeObserverFactory,\n ResizeObserverService,\n CanDismissHelper,\n];\n\nconst ConfigToken = new InjectionToken<unknown>('USERCONFIG');\nexport interface KirbyConfig {\n moduleRootRoutePath?: string;\n}\n\n@NgModule({\n imports: [CommonModule, RouterModule, KirbyIonicModule, ...importedModules],\n declarations: [declarations],\n providers: providers,\n exports: [allExports],\n})\nexport class KirbyModule {\n static forChild(config?: KirbyConfig): ModuleWithProviders<KirbyModule> {\n return {\n ngModule: KirbyModule,\n providers: [\n {\n provide: ConfigToken,\n useValue: config,\n },\n ],\n };\n }\n\n constructor(\n modalController: ModalController,\n @Optional() @Inject(ConfigToken) config?: KirbyConfig\n ) {\n modalController.initialize(config && config.moduleRootRoutePath);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { PageLocalNavigationComponent } from './components';\nimport { KirbyModule } from './kirby.module';\n\nconst COMPONENT_DECLARATIONS = [PageLocalNavigationComponent];\nexport { StockChartConfig, BarChartConfig } from '@kirbydesign/designsystem/chart';\n\n/**\n * This module contains experimental components, that should not be used in a production environment.\n * @see KirbyModule\n */\n@NgModule({\n imports: [CommonModule, KirbyModule, PageLocalNavigationComponent],\n exports: COMPONENT_DECLARATIONS,\n})\nexport class KirbyExperimentalModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i1"],"mappings":"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"}
1
+ {"version":3,"file":"kirbydesign-designsystem.mjs","sources":["../../src/lib/components/segmented-control/segmented-control.component.ts","../../src/lib/components/segmented-control/segmented-control.component.html","../../src/lib/components/page-local-navigation/page-local-navigation.component.ts","../../src/lib/components/page-local-navigation/page-local-navigation.component.html","../../src/lib/components/index.ts","../../src/lib/directives/key-handler/key-handler.directive.ts","../../src/lib/directives/modal-router-link/modal-router-link.directive.ts","../../src/lib/kirby.module.ts","../../src/lib/kirby-experimental.module.ts","../../src/kirbydesign-designsystem.ts"],"sourcesContent":["import {\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { IconModule } from '@kirbydesign/designsystem/icon';\nimport { BadgeComponent } from '@kirbydesign/designsystem/badge';\n\nimport { IonSegment, IonSegmentButton } from '@ionic/angular/standalone';\nimport { CommonModule } from '@angular/common';\nimport { SegmentItem } from './segment-item';\n\nexport enum SegmentedControlMode {\n chip = 'chip',\n compactChip = 'compactChip',\n default = 'default',\n}\n\n// Workaround until TS 5.4 official NoInfer\n// https://github.com/millsp/ts-toolbelt/blob/master/sources/Function/NoInfer.ts\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype NoInfer<T> = [T][T extends any ? 0 : never];\n\n@Component({\n standalone: true,\n imports: [IconModule, BadgeComponent, CommonModule, IonSegment, IonSegmentButton],\n selector: 'kirby-segmented-control',\n templateUrl: './segmented-control.component.html',\n styleUrls: ['./segmented-control.component.scss'],\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: { role: 'group' },\n})\nexport class SegmentedControlComponent<TItem extends SegmentItem = SegmentItem> {\n @ViewChild(IonSegment, { static: true, read: ElementRef })\n private ionSegmentElement: ElementRef<HTMLIonSegmentElement>;\n\n /**\n * Ensure that the click actually did originate from within the segment-button.\n * We do not want to react to clicks on e.g. segment-btn-wrapper or badge.\n */\n preventOutsideClick(event: TouchEvent) {\n if (event.target instanceof HTMLElement) {\n const targetIsInSegmentBtn = !!event.target.closest('ion-segment-button');\n if (!targetIsInSegmentBtn) {\n event.stopImmediatePropagation();\n }\n }\n }\n\n @Input() mode: SegmentedControlMode | `${SegmentedControlMode}` = SegmentedControlMode.default;\n\n @HostBinding('class')\n get _modeCssClass() {\n return {\n [SegmentedControlMode.chip]: 'chip-mode',\n [SegmentedControlMode.default]: 'default-mode',\n [SegmentedControlMode.compactChip]: 'compact chip-mode',\n }[this.mode];\n }\n\n private _items: TItem[] = [];\n get items(): TItem[] {\n return this._items;\n }\n\n @Input() set items(value: TItem[]) {\n this._items = value || [];\n this._value = this.items[this.selectedIndex];\n this.ensureIonSegmentSelected();\n }\n\n /**\n * After upgrading to Ionic standalone components (Ionic v.7.6.6)\n * there is a lifecycle bug between Angular/Ionic/Stencil that prevents\n * the value of the segment component to be reflected in the checked state\n * of it's slotted segment buttons.\n * This has been patched here: https://github.com/ionic-team/ionic-framework/pull/28837\n * However the patch doesn't fix the problem if `items` are updated after first initialization\n * and the ion-segment-button(s) are re-rerendered.\n */\n private ensureIonSegmentSelected() {\n const ionSegment = this.ionSegmentElement.nativeElement;\n const ionSelectEvent = ionSegment['ionSelect'];\n if (this._value && typeof ionSelectEvent?.emit === 'function') {\n // Ensure changes has been reflected to the DOM:\n setTimeout(() => {\n const selectedSegmentButton = ionSegment.querySelector(\n 'ion-segment-button.segment-button-checked'\n );\n if (selectedSegmentButton) return; // Nothing to patch\n\n ionSelectEvent.emit({ value: this._value.id });\n });\n }\n }\n\n private _selectedIndex: number = -1;\n get selectedIndex(): number {\n return this._selectedIndex;\n }\n\n @Input() set selectedIndex(index: number) {\n if (index !== this._selectedIndex) {\n this._selectedIndex = index;\n this._value = this.items[this.selectedIndex];\n this.selectedIndexChange.emit(this.selectedIndex);\n }\n }\n\n @Output() selectedIndexChange = new EventEmitter<number>();\n\n private _value: NoInfer<TItem>;\n get value(): NoInfer<TItem> {\n return this._value;\n }\n\n @Input() set value(value: NoInfer<TItem>) {\n this.selectedIndex = this.items.indexOf(value);\n }\n\n @HostBinding('class.sm')\n isSmallSize: boolean;\n\n @Input() set size(size: 'sm' | 'md') {\n this.isSmallSize = size === 'sm';\n }\n\n private _disableChangeOnSwipe: boolean = false;\n get disableChangeOnSwipe(): boolean {\n return this._disableChangeOnSwipe;\n }\n\n @Input() set disableChangeOnSwipe(value: boolean) {\n this._disableChangeOnSwipe = value;\n }\n\n @Output() segmentSelect = new EventEmitter<TItem>();\n\n onSegmentSelect(selectedId: string) {\n const selectedItemIndex = this.items.findIndex((item) => selectedId === item.id);\n\n if (selectedItemIndex !== this.selectedIndex) {\n this.selectedIndex = selectedItemIndex;\n setTimeout(() => {\n this.segmentSelect.emit(this.value);\n });\n }\n }\n}\n","<ion-segment\n [value]=\"value?.id\"\n [scrollable]=\"disableChangeOnSwipe || mode !== 'default'\"\n (ionChange)=\"onSegmentSelect($event.detail.value)\"\n (click)=\"preventOutsideClick($event)\"\n>\n <ng-container *ngFor=\"let item of items\">\n <ion-segment-button [value]=\"item.id\">\n {{ item.text }}\n <kirby-badge\n *ngIf=\"item.badge\"\n role=\"text\"\n [attr.aria-label]=\"item.badge.description\"\n [themeColor]=\"item.badge.themeColor\"\n >\n <ng-container *ngIf=\"item.badge.icon; else badgeContent\">\n <kirby-icon [name]=\"item.badge.icon\"></kirby-icon>\n </ng-container>\n <ng-template #badgeContent>\n {{ item.badge.content }}\n </ng-template>\n </kirby-badge>\n </ion-segment-button>\n </ng-container>\n</ion-segment>\n","import { CommonModule } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { WindowRef } from '@kirbydesign/designsystem/types';\nimport { IconModule } from '@kirbydesign/designsystem/icon';\nimport { BadgeComponent } from '@kirbydesign/designsystem/badge';\nimport { LocalNavigationItem } from './page-local-navigation-item';\n\n@Component({\n standalone: true,\n imports: [BadgeComponent, IconModule, CommonModule],\n selector: 'kirby-page-local-navigation',\n templateUrl: './page-local-navigation.component.html',\n styleUrls: ['./page-local-navigation.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PageLocalNavigationComponent implements AfterViewInit {\n private readonly DEBOUNCE_TIME_MS = 250;\n\n @Input() items: LocalNavigationItem[] = [];\n @Input() selectedIndex = 0;\n\n @Output() selectedIndexChange = new EventEmitter<number>();\n\n @ViewChild('tabBar') tabBarElementRef?: ElementRef<HTMLElement>;\n private get tabBarNativeElement(): HTMLElement | undefined {\n return this.tabBarElementRef?.nativeElement;\n }\n\n constructor(private window: WindowRef) {\n console.warn(\n 'Kirby Local Navigation is deprecated, and will be removed in Kirby v10. It is replaced by Kirby Tab Navigation with identical functionality, but with more flexibility and an improved API.'\n );\n }\n\n ngAfterViewInit(): void {\n setTimeout(() => {\n this.scrollToSelectedTab(this.selectedIndex);\n }, this.DEBOUNCE_TIME_MS);\n }\n\n onTabChange(index: number): void {\n if (this.selectedIndex !== index) {\n this.selectedIndex = index;\n this.scrollToSelectedTab(index);\n this.selectedIndexChange.emit(index);\n }\n }\n\n private getSelectedItemElement(index: number): HTMLElement | undefined {\n const tabBarElement = this.tabBarNativeElement;\n\n if (tabBarElement) {\n return tabBarElement.children.item(index) as HTMLElement;\n }\n }\n\n focusNext(index: number): void {\n const tabBarElement = this.tabBarNativeElement;\n if (tabBarElement) {\n const next = tabBarElement.children.item(index) as HTMLElement;\n next?.focus({ preventScroll: false });\n }\n }\n\n private scrollToSelectedTab(index: number): void {\n const tabBarElement = this.tabBarNativeElement;\n const selectedTabElement = this.getSelectedItemElement(index);\n\n if (tabBarElement && selectedTabElement) {\n const selectedTabElementWidth = selectedTabElement.getBoundingClientRect().width;\n const selectedTabElementOffsetLeft = selectedTabElement.offsetLeft;\n const tabBarElementWidth = tabBarElement.getBoundingClientRect().width;\n\n this.window.nativeWindow.requestAnimationFrame(() => {\n tabBarElement?.scrollTo({\n behavior: 'smooth',\n left: Math.max(\n 0,\n selectedTabElementOffsetLeft - (tabBarElementWidth - selectedTabElementWidth) / 2\n ),\n });\n });\n }\n }\n}\n","<div class=\"container\">\n <div class=\"tab-bar\" #tabBar>\n <div\n class=\"tab-item\"\n *ngFor=\"let item of items; let i = index\"\n (click)=\"onTabChange(i)\"\n [ngClass]=\"i === selectedIndex ? 'selected' : ''\"\n [tabIndex]=\"0\"\n (keydown.enter)=\"onTabChange(i)\"\n (keydown.arrowLeft)=\"focusNext(i - 1)\"\n (keydown.arrowRight)=\"focusNext(i + 1)\"\n >\n <div class=\"tab-item-inner\" [class.extended]=\"!!item.badge\">\n <span [attr.text]=\"item.text\">{{ item.text }}</span>\n <ng-container *ngIf=\"item.badge; let badge\">\n <kirby-badge\n role=\"text\"\n [attr.aria-label]=\"badge.description\"\n [themeColor]=\"badge.themeColor\"\n >\n <ng-container *ngIf=\"badge.content.name; else badgeTextContent\">\n <kirby-icon\n *ngIf=\"badge.content.isCustom; else defaultIconName\"\n [customName]=\"badge.content.name\"\n ></kirby-icon>\n <ng-template #defaultIconName>\n <kirby-icon [name]=\"badge.content.name\"></kirby-icon>\n </ng-template>\n </ng-container>\n <ng-template #badgeTextContent>\n {{ badge.content.text }}\n </ng-template>\n </kirby-badge>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n","/* prettier-ignore */\nexport { SegmentedControlComponent, SegmentedControlMode} from './segmented-control/segmented-control.component'; // See issue #1555 for prettier-ignore explanation\nexport { SegmentItem } from './segmented-control/segment-item';\n\nexport * from './page-local-navigation';\n","import { Directive, ElementRef, HostListener } from '@angular/core';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: `[keyHandler]`,\n})\nexport class KeyHandlerDirective {\n constructor(private element: ElementRef) {}\n\n @HostListener('keyup', ['$event'])\n keyEvent(event: KeyboardEvent) {\n if (event.key === ' ' || event.key === 'Enter' || event.key === 'Spacebar') {\n // Prevent the default action to stop scrolling when space is pressed\n event.preventDefault();\n\n const hostElement = <HTMLElement>this.element.nativeElement;\n hostElement.click();\n }\n }\n}\n","import { Directive, ElementRef, HostListener, Input, OnInit } from '@angular/core';\nimport { Params } from '@angular/router';\nimport { AlertConfig, ModalNavigationService } from '@kirbydesign/designsystem/modal';\n\n@Directive({\n selector: `[kirbyModalRouterLink]`,\n})\nexport class ModalRouterLinkDirective implements OnInit {\n constructor(\n private modalNavigationService: ModalNavigationService,\n private elementRef: ElementRef\n ) {}\n\n ngOnInit(): void {\n this.elementRef.nativeElement.setAttribute('modal-router-link', '');\n }\n\n @Input('kirbyModalRouterLink') path: string | string[];\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('kirbyModalQueryParams') queryParams?: Params;\n // eslint-disable-next-line @angular-eslint/no-input-rename\n @Input('kirbyAlertConfig') alertConfig?: AlertConfig;\n\n @HostListener('click')\n onClick(): boolean {\n this.modalNavigationService.navigateToModal(\n this.path,\n typeof this.queryParams !== 'string' ? this.queryParams : null,\n this.alertConfig || null\n );\n return false;\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { Inject, InjectionToken, ModuleWithProviders, NgModule, Optional } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\nimport { CardModule } from '@kirbydesign/designsystem/card';\nimport { IconModule } from '@kirbydesign/designsystem/icon';\nimport { KirbyIonicModule } from '@kirbydesign/designsystem/kirby-ionic-module';\nimport {\n ComponentLoaderDirective,\n ResizeObserverFactory,\n ResizeObserverService,\n ThemeColorDirective,\n} from '@kirbydesign/designsystem/shared';\nimport { FlagComponent } from '@kirbydesign/designsystem/flag';\nimport { SpinnerModule } from '@kirbydesign/designsystem/spinner';\nimport { ToggleComponent } from '@kirbydesign/designsystem/toggle';\nimport { SectionHeaderComponent } from '@kirbydesign/designsystem/section-header';\nimport { ItemModule } from '@kirbydesign/designsystem/item';\nimport { SlideModule } from '@kirbydesign/designsystem/slide';\nimport { ToggleButtonModule } from '@kirbydesign/designsystem/toggle-button';\nimport { TabsModule } from '@kirbydesign/designsystem/tabs';\nimport { SlideButtonComponent } from '@kirbydesign/designsystem/slide-button';\nimport { RangeComponent } from '@kirbydesign/designsystem/range';\nimport { PopoverComponent } from '@kirbydesign/designsystem/popover';\nimport {\n LoadingOverlayComponent,\n LoadingOverlayService,\n} from '@kirbydesign/designsystem/loading-overlay';\nimport { DividerComponent } from '@kirbydesign/designsystem/divider';\nimport { CheckboxComponent } from '@kirbydesign/designsystem/checkbox';\nimport { AccordionModule } from '@kirbydesign/designsystem/accordion';\nimport { ItemSlidingComponent } from '@kirbydesign/designsystem/item-sliding';\nimport { ListModule } from '@kirbydesign/designsystem/list';\nimport { RadioModule } from '@kirbydesign/designsystem/radio';\nimport {\n AffixDirective,\n FormFieldModule,\n InputComponent,\n TextareaComponent,\n} from '@kirbydesign/designsystem/form-field';\nimport { AvatarComponent } from '@kirbydesign/designsystem/avatar';\nimport {\n ProgressCircleComponent,\n ProgressCircleRingComponent,\n} from '@kirbydesign/designsystem/progress-circle';\nimport { RouterOutletModule } from '@kirbydesign/designsystem/router-outlet';\n\nimport { ItemGroupComponent } from '@kirbydesign/designsystem/item-group';\nimport { ButtonComponent } from '@kirbydesign/designsystem/button';\nimport { CalendarComponent } from '@kirbydesign/designsystem/calendar';\nimport {\n ActionSheetComponent,\n ActionSheetHelper,\n AlertComponent,\n AlertHelper,\n CanDismissHelper,\n ModalCompactWrapperComponent,\n ModalController,\n ModalFooterComponent,\n ModalHelper,\n ModalWrapperComponent,\n} from '@kirbydesign/designsystem/modal';\nimport { ModalComponent } from '@kirbydesign/designsystem/modal';\nimport { KirbyModalModule } from '@kirbydesign/designsystem/modal/v2';\nimport { PageModule } from '@kirbydesign/designsystem/page';\nimport { HeaderModule } from '@kirbydesign/designsystem/header';\nimport { EmptyStateModule } from '@kirbydesign/designsystem/empty-state';\nimport { DropdownModule } from '@kirbydesign/designsystem/dropdown';\nimport { KirbyAppModule } from '@kirbydesign/designsystem/kirby-app';\nimport { ChartsModule } from '@kirbydesign/designsystem/chart';\nimport { FabSheetComponent } from '@kirbydesign/designsystem/fab-sheet';\nimport { DataTableModule } from '@kirbydesign/designsystem/data-table';\nimport { ReorderListComponent } from '@kirbydesign/designsystem/reorder-list';\n\nimport { ToastController, ToastHelper } from '@kirbydesign/designsystem/toast';\nimport { ActionGroupComponent } from '@kirbydesign/designsystem/action-group';\nimport { MenuComponent } from '@kirbydesign/designsystem/menu';\nimport { TabNavigationModule } from '@kirbydesign/designsystem/tab-navigation';\nimport { BadgeComponent } from '@kirbydesign/designsystem/badge';\nimport { SegmentedControlComponent } from './components/segmented-control/segmented-control.component';\nimport { KeyHandlerDirective } from './directives/key-handler/key-handler.directive';\nimport { ModalRouterLinkDirective } from './directives/modal-router-link/modal-router-link.directive';\n\nconst exportedDeclarations = [ModalRouterLinkDirective];\n\nconst declarations = [...exportedDeclarations, KeyHandlerDirective];\n\nconst standaloneComponents = [\n ActionGroupComponent,\n ItemGroupComponent,\n ModalCompactWrapperComponent,\n TextareaComponent,\n InputComponent,\n AffixDirective,\n DividerComponent,\n ThemeColorDirective,\n SegmentedControlComponent,\n AlertComponent,\n PopoverComponent,\n ProgressCircleRingComponent,\n ModalWrapperComponent,\n SectionHeaderComponent,\n RangeComponent,\n ItemSlidingComponent,\n ProgressCircleComponent,\n ReorderListComponent,\n LoadingOverlayComponent,\n FabSheetComponent,\n ToggleComponent,\n SlideButtonComponent,\n SegmentedControlComponent,\n CheckboxComponent,\n MenuComponent,\n ActionSheetComponent,\n ModalFooterComponent,\n AvatarComponent,\n CalendarComponent,\n ButtonComponent,\n ComponentLoaderDirective,\n FlagComponent,\n BadgeComponent,\n ModalComponent,\n];\nconst exportedModules = [\n KirbyAppModule,\n RouterOutletModule,\n PageModule,\n HeaderModule,\n TabNavigationModule,\n TabsModule,\n IconModule,\n ItemModule,\n ToggleButtonModule,\n ListModule,\n ChartsModule,\n SpinnerModule,\n DataTableModule,\n CardModule,\n RadioModule,\n EmptyStateModule,\n DropdownModule,\n FormFieldModule,\n SlideModule,\n AccordionModule,\n HeaderModule,\n KirbyModalModule,\n ...standaloneComponents,\n];\n\nconst allExports = [...exportedModules, ...exportedDeclarations];\n\nconst importedModules = [...exportedModules];\n\nconst providers = [\n ModalController,\n ActionSheetHelper,\n ModalHelper,\n AlertHelper,\n ToastHelper,\n ToastController,\n LoadingOverlayService,\n ResizeObserverFactory,\n ResizeObserverService,\n CanDismissHelper,\n];\n\nconst ConfigToken = new InjectionToken<unknown>('USERCONFIG');\nexport interface KirbyConfig {\n moduleRootRoutePath?: string;\n}\n\n@NgModule({\n imports: [CommonModule, RouterModule, KirbyIonicModule, ...importedModules],\n declarations: [declarations],\n providers: providers,\n exports: [allExports],\n})\nexport class KirbyModule {\n static forChild(config?: KirbyConfig): ModuleWithProviders<KirbyModule> {\n return {\n ngModule: KirbyModule,\n providers: [\n {\n provide: ConfigToken,\n useValue: config,\n },\n ],\n };\n }\n\n constructor(\n modalController: ModalController,\n @Optional() @Inject(ConfigToken) config?: KirbyConfig\n ) {\n modalController.initialize(config && config.moduleRootRoutePath);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { PageLocalNavigationComponent } from './components';\nimport { KirbyModule } from './kirby.module';\n\nconst COMPONENT_DECLARATIONS = [PageLocalNavigationComponent];\nexport { StockChartConfig, BarChartConfig } from '@kirbydesign/designsystem/chart';\n\n/**\n * This module contains experimental components, that should not be used in a production environment.\n * @see KirbyModule\n */\n@NgModule({\n imports: [CommonModule, KirbyModule, PageLocalNavigationComponent],\n exports: COMPONENT_DECLARATIONS,\n})\nexport class KirbyExperimentalModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i1"],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { AfterContentInit, ElementRef, EventEmitter, Injector, OnInit, TemplateRef } from '@angular/core';
1
+ import { AfterContentInit, ElementRef, EventEmitter, Injector, OnChanges, OnInit, SimpleChanges, TemplateRef } from '@angular/core';
2
+ import { Subject } from 'rxjs';
2
3
  import { AvatarComponent } from '@kirbydesign/designsystem/avatar';
3
4
  import { FlagComponent } from '@kirbydesign/designsystem/flag';
4
5
  import { ProgressCircleComponent } from '@kirbydesign/designsystem/progress-circle';
@@ -20,7 +21,7 @@ export declare class HeaderCustomFlagDirective {
20
21
  static ɵfac: i0.ɵɵFactoryDeclaration<HeaderCustomFlagDirective, never>;
21
22
  static ɵdir: i0.ɵɵDirectiveDeclaration<HeaderCustomFlagDirective, "[kirbyHeaderCustomFlag]", never, {}, {}, never, never, false, never>;
22
23
  }
23
- export declare class HeaderComponent implements AfterContentInit, OnInit {
24
+ export declare class HeaderComponent implements AfterContentInit, OnChanges, OnInit {
24
25
  private injector;
25
26
  centered?: boolean;
26
27
  titleMaxLines: number;
@@ -42,6 +43,7 @@ export declare class HeaderComponent implements AfterContentInit, OnInit {
42
43
  subtitle2?: string | string[] | null;
43
44
  hasInteractiveTitle?: boolean;
44
45
  titleClick: EventEmitter<PointerEvent>;
46
+ title$: Subject<string>;
45
47
  get _subtitles1(): string[];
46
48
  get _subtitles2(): string[];
47
49
  onTitleClick(event: PointerEvent): void;
@@ -50,6 +52,7 @@ export declare class HeaderComponent implements AfterContentInit, OnInit {
50
52
  constructor(injector: Injector);
51
53
  ngOnInit(): void;
52
54
  ngAfterContentInit(): void;
55
+ ngOnChanges(changes: SimpleChanges): void;
53
56
  static ɵfac: i0.ɵɵFactoryDeclaration<HeaderComponent, never>;
54
57
  static ɵcmp: i0.ɵɵComponentDeclaration<HeaderComponent, "kirby-header", never, { "centered": { "alias": "centered"; "required": false; }; "titleMaxLines": { "alias": "titleMaxLines"; "required": false; }; "emphasizeActions": { "alias": "emphasizeActions"; "required": false; }; "title": { "alias": "title"; "required": false; }; "value": { "alias": "value"; "required": false; }; "valueUnit": { "alias": "valueUnit"; "required": false; }; "subtitle1": { "alias": "subtitle1"; "required": false; }; "subtitle2": { "alias": "subtitle2"; "required": false; }; "hasInteractiveTitle": { "alias": "hasInteractiveTitle"; "required": false; }; }, { "titleClick": "titleClick"; }, ["avatar", "progressCircle", "flag", "actionsTemplate", "customSectionTemplate", "customFlagTemplate", "titleActionIconTemplate"], ["kirby-avatar,kirby-progress-circle", "kirby-flag"], false, never>;
55
58
  }
@@ -13,6 +13,6 @@ import * as i11 from "@kirbydesign/designsystem/spinner";
13
13
  import * as i12 from "@ionic/angular/standalone";
14
14
  export declare class ListModule {
15
15
  static ɵfac: i0.ɵɵFactoryDeclaration<ListModule, never>;
16
- static ɵmod: i0.ɵɵNgModuleDeclaration<ListModule, [typeof i1.ListComponent, typeof i2.ListItemComponent, typeof i3.ListItemTemplateDirective, typeof i4.ListSectionHeaderComponent, typeof i3.ListSectionHeaderDirective, typeof i3.ListHeaderDirective, typeof i5.ListHeaderComponent, typeof i3.ListFooterDirective, typeof i6.ListExperimentalComponent, typeof i7.ListItemColorDirective, typeof i8.InfiniteScrollDirective, typeof i2.ListItemComponent], [typeof i9.CommonModule, typeof i10.IconModule, typeof i11.SpinnerModule, typeof i12.IonItemSliding, typeof i12.IonLabel, typeof i12.IonItemOptions, typeof i12.IonItemDivider, typeof i12.IonListHeader], [typeof i1.ListComponent, typeof i2.ListItemComponent, typeof i3.ListItemTemplateDirective, typeof i4.ListSectionHeaderComponent, typeof i3.ListSectionHeaderDirective, typeof i3.ListHeaderDirective, typeof i5.ListHeaderComponent, typeof i3.ListFooterDirective, typeof i6.ListExperimentalComponent]>;
16
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ListModule, [typeof i1.ListComponent, typeof i2.ListItemComponent, typeof i3.ListItemTemplateDirective, typeof i4.ListSectionHeaderComponent, typeof i3.ListSectionHeaderDirective, typeof i3.ListHeaderDirective, typeof i5.ListHeaderComponent, typeof i3.ListFooterDirective, typeof i6.ListExperimentalComponent, typeof i7.ListItemColorDirective, typeof i8.InfiniteScrollDirective, typeof i2.ListItemComponent], [typeof i9.CommonModule, typeof i10.IconModule, typeof i11.SpinnerModule, typeof i12.IonItemDivider, typeof i12.IonItemGroup, typeof i12.IonItemOptions, typeof i12.IonItemSliding, typeof i12.IonLabel, typeof i12.IonList, typeof i12.IonListHeader], [typeof i1.ListComponent, typeof i2.ListItemComponent, typeof i3.ListItemTemplateDirective, typeof i4.ListSectionHeaderComponent, typeof i3.ListSectionHeaderDirective, typeof i3.ListHeaderDirective, typeof i5.ListHeaderComponent, typeof i3.ListFooterDirective, typeof i6.ListExperimentalComponent]>;
17
17
  static ɵinj: i0.ɵɵInjectorDeclaration<ListModule>;
18
18
  }
@@ -1,13 +1,15 @@
1
- import { AfterContentInit, ElementRef, EventEmitter, OnChanges, SimpleChanges, TemplateRef } from '@angular/core';
1
+ import { ElementRef, EventEmitter, OnChanges, SimpleChanges, TemplateRef } from '@angular/core';
2
2
  import { IonContent } from '@ionic/angular/standalone';
3
3
  import { OverlayEventDetail } from '@ionic/core/components';
4
4
  import { KirbyAnimation } from '@kirbydesign/designsystem/helpers';
5
5
  import { WindowRef } from '@kirbydesign/designsystem/types';
6
+ import { ModalNavigationService } from '../../modal-navigation.service';
6
7
  import { DrawerSupplementaryAction, ModalConfig, ModalFlavor, ModalSize, ShowAlertCallback } from '../../modal-wrapper';
7
8
  import { CanDismissHelper } from '../services';
8
9
  import * as i0 from "@angular/core";
9
- export declare class ModalComponent implements OnChanges, AfterContentInit {
10
+ export declare class ModalComponent implements OnChanges {
10
11
  private canDismissHelper;
12
+ private modalNavigationService;
11
13
  private windowRef;
12
14
  modalElement: ElementRef<HTMLIonModalElement>;
13
15
  ionContent: IonContent;
@@ -33,8 +35,7 @@ export declare class ModalComponent implements OnChanges, AfterContentInit {
33
35
  */
34
36
  _config: ModalConfig;
35
37
  _canDismiss: ShowAlertCallback | boolean;
36
- constructor(canDismissHelper: CanDismissHelper, windowRef: WindowRef);
37
- ngAfterContentInit(): void;
38
+ constructor(canDismissHelper: CanDismissHelper, modalNavigationService: ModalNavigationService, windowRef: WindowRef);
38
39
  ngOnChanges(changes: SimpleChanges): void;
39
40
  scrollToTop(scrollDuration?: KirbyAnimation.Duration): void;
40
41
  scrollToBottom(scrollDuration?: KirbyAnimation.Duration): void;
@@ -42,7 +43,6 @@ export declare class ModalComponent implements OnChanges, AfterContentInit {
42
43
  _onDidPresent(event: CustomEvent<OverlayEventDetail>): void;
43
44
  _onWillDismiss(event: CustomEvent<OverlayEventDetail>): void;
44
45
  _onDidDismiss(event: CustomEvent<OverlayEventDetail>): void;
45
- private handleBrowserBackButton;
46
46
  private updateModalConfigOnChange;
47
47
  static ɵfac: i0.ɵɵFactoryDeclaration<ModalComponent, never>;
48
48
  static ɵcmp: i0.ɵɵComponentDeclaration<ModalComponent, "kirby-modal", never, { "isOpen": { "alias": "isOpen"; "required": false; }; "trigger": { "alias": "trigger"; "required": false; }; "size": { "alias": "size"; "required": false; }; "scrollDisabled": { "alias": "scrollDisabled"; "required": false; }; "canDismiss": { "alias": "canDismiss"; "required": false; }; "collapseTitle": { "alias": "collapseTitle"; "required": false; }; "customHeight": { "alias": "customHeight"; "required": false; }; "flavor": { "alias": "flavor"; "required": false; }; "drawerSupplementaryAction": { "alias": "drawerSupplementaryAction"; "required": false; }; "interactWithBackground": { "alias": "interactWithBackground"; "required": false; }; }, { "willPresent": "willPresent"; "didPresent": "didPresent"; "didDismiss": "didDismiss"; "willDismiss": "willDismiss"; }, ["template"], never, true, never>;
@@ -0,0 +1,2 @@
1
+ import { CanDeactivateFn } from '@angular/router';
2
+ export declare const CanDismissModalGuard: CanDeactivateFn<unknown>;
@@ -3,3 +3,4 @@ export * from './action-sheet.helper';
3
3
  export * from './alert.helper';
4
4
  export * from './modal.controller';
5
5
  export * from './can-dismiss.helper';
6
+ export * from './can-dismiss-modal-guard';
@@ -1,5 +1,6 @@
1
1
  import { OnDestroy } from '@angular/core';
2
2
  import { Params, Routes } from '@angular/router';
3
+ import { Overlay } from '../../modal.interfaces';
3
4
  import { ActionSheetConfig } from '../action-sheet/config/action-sheet-config';
4
5
  import { AlertConfig } from '../alert/config/alert-config';
5
6
  import { ModalNavigationService } from '../../modal-navigation.service';
@@ -30,6 +31,7 @@ export declare class ModalController implements OnDestroy {
30
31
  private showAndRegisterOverlay;
31
32
  hideTopmost(data?: any): Promise<boolean>;
32
33
  hideAll(): Promise<void>;
34
+ getTopMost(): Overlay | null;
33
35
  ngOnDestroy(): void;
34
36
  static ɵfac: i0.ɵɵFactoryDeclaration<ModalController, [null, null, null, null, { optional: true; }]>;
35
37
  static ɵprov: i0.ɵɵInjectableDeclaration<ModalController>;
@@ -1,22 +1,21 @@
1
1
  import { ModalController } from '@ionic/angular/standalone';
2
2
  import { WindowRef } from '@kirbydesign/designsystem/types';
3
3
  import { Overlay } from '../../modal.interfaces';
4
+ import { ModalNavigationService } from '../../modal-navigation.service';
4
5
  import { ModalConfig } from '../../modal-wrapper';
5
6
  import { AlertConfig } from '../alert/config/alert-config';
6
7
  import { ModalAnimationBuilderService } from './modal-animation-builder.service';
7
8
  import { CanDismissHelper } from './can-dismiss.helper';
8
- import { AlertHelper } from './alert.helper';
9
9
  import * as i0 from "@angular/core";
10
10
  export declare class ModalHelper {
11
11
  private ionicModalController;
12
12
  private modalAnimationBuilder;
13
+ private modalNavigationService;
13
14
  private windowRef;
14
15
  private canDismissHelper;
15
- private alertHelper;
16
- constructor(ionicModalController: ModalController, modalAnimationBuilder: ModalAnimationBuilderService, windowRef: WindowRef, canDismissHelper: CanDismissHelper, alertHelper: AlertHelper);
16
+ constructor(ionicModalController: ModalController, modalAnimationBuilder: ModalAnimationBuilderService, modalNavigationService: ModalNavigationService, windowRef: WindowRef, canDismissHelper: CanDismissHelper);
17
17
  private isModalOpening;
18
18
  showModalWindow(config: ModalConfig, alertConfig?: AlertConfig): Promise<Overlay>;
19
- private handleBrowserBackButton;
20
19
  static ɵfac: i0.ɵɵFactoryDeclaration<ModalHelper, never>;
21
20
  static ɵprov: i0.ɵɵInjectableDeclaration<ModalHelper>;
22
21
  }
@@ -35,6 +35,7 @@ export declare class ModalNavigationService {
35
35
  navigateWithinModal(relativePath: string, queryParams?: Params): Promise<boolean>;
36
36
  navigateOutOfModalOutlet(): Promise<boolean>;
37
37
  private getBackdropRoute;
38
+ handleBrowserBackButton(modal: HTMLIonModalElement): void;
38
39
  static ɵfac: i0.ɵɵFactoryDeclaration<ModalNavigationService, never>;
39
40
  static ɵprov: i0.ɵɵInjectableDeclaration<ModalNavigationService>;
40
41
  }
@@ -11,6 +11,7 @@ export interface Overlay {
11
11
  dismiss: (data?: any) => Promise<boolean>;
12
12
  onWillDismiss: Promise<OverlayEventDetail>;
13
13
  onDidDismiss: Promise<OverlayEventDetail>;
14
+ isDismissing?: boolean;
14
15
  }
15
16
  export interface ModalData {
16
17
  alertConfig: AlertConfig;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kirbydesign/designsystem",
3
- "version": "9.5.0",
3
+ "version": "9.6.0",
4
4
  "description": "The Kirby Design Angular Components.",
5
5
  "author": "kirby@bankdata.dk",
6
6
  "repository": {
@@ -21,7 +21,7 @@
21
21
  "dependencies": {
22
22
  "@floating-ui/dom": "^1.1.0",
23
23
  "@fontsource/roboto": "4.2.1",
24
- "@kirbydesign/core": "0.0.61",
24
+ "@kirbydesign/core": "0.0.62",
25
25
  "inputmask": "5.0.8",
26
26
  "tslib": "^2.3.0"
27
27
  },
@@ -1,4 +1,4 @@
1
- import { BrandColor, NotificationColor } from '@kirbydesign/core/dist/types/helpers';
1
+ import { BrandColor, NotificationColor } from '@kirbydesign/core';
2
2
  import { AvatarSize } from '@kirbydesign/designsystem/avatar';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class MockAvatarComponent {
@@ -1,4 +1,4 @@
1
- import { NotificationColor } from '@kirbydesign/core/dist/types/helpers';
1
+ import { NotificationColor } from '@kirbydesign/core';
2
2
  import { AttentionLevel, ButtonSize } from '@kirbydesign/designsystem/button';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class MockButtonComponent {