@kirbydesign/designsystem 10.2.1 → 10.3.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 (1343) hide show
  1. package/accordion/accordion-item.component.d.ts +1 -0
  2. package/accordion/accordion-item.component.d.ts.map +1 -0
  3. package/accordion/accordion.directive.d.ts +1 -0
  4. package/accordion/accordion.directive.d.ts.map +1 -0
  5. package/accordion/accordion.module.d.ts +1 -0
  6. package/accordion/accordion.module.d.ts.map +1 -0
  7. package/accordion/index.d.ts +1 -0
  8. package/accordion/kirbydesign-designsystem-accordion.d.ts.map +1 -0
  9. package/accordion/public_api.d.ts +1 -0
  10. package/accordion/public_api.d.ts.map +1 -0
  11. package/action-group/action-group.component.d.ts +1 -0
  12. package/action-group/action-group.component.d.ts.map +1 -0
  13. package/action-group/index.d.ts +1 -0
  14. package/action-group/kirbydesign-designsystem-action-group.d.ts.map +1 -0
  15. package/action-group/public_api.d.ts +1 -0
  16. package/action-group/public_api.d.ts.map +1 -0
  17. package/avatar/avatar.component.d.ts +1 -0
  18. package/avatar/avatar.component.d.ts.map +1 -0
  19. package/avatar/index.d.ts +1 -0
  20. package/avatar/kirbydesign-designsystem-avatar.d.ts.map +1 -0
  21. package/avatar/public_api.d.ts +1 -0
  22. package/avatar/public_api.d.ts.map +1 -0
  23. package/badge/badge.component.d.ts +1 -0
  24. package/badge/badge.component.d.ts.map +1 -0
  25. package/badge/index.d.ts +1 -0
  26. package/badge/kirbydesign-designsystem-badge.d.ts.map +1 -0
  27. package/badge/public_api.d.ts +1 -0
  28. package/badge/public_api.d.ts.map +1 -0
  29. package/button/button.component.d.ts +1 -0
  30. package/button/button.component.d.ts.map +1 -0
  31. package/button/index.d.ts +1 -0
  32. package/button/kirbydesign-designsystem-button.d.ts.map +1 -0
  33. package/button/public_api.d.ts +1 -0
  34. package/button/public_api.d.ts.map +1 -0
  35. package/calendar/calendar.component.d.ts +1 -0
  36. package/calendar/calendar.component.d.ts.map +1 -0
  37. package/calendar/index.d.ts +1 -0
  38. package/calendar/interfaces/calendar-day.d.ts +1 -0
  39. package/calendar/interfaces/calendar-day.d.ts.map +1 -0
  40. package/calendar/interfaces/calendar-year-navigator-config.d.ts +1 -0
  41. package/calendar/interfaces/calendar-year-navigator-config.d.ts.map +1 -0
  42. package/calendar/kirbydesign-designsystem-calendar.d.ts.map +1 -0
  43. package/calendar/public_api.d.ts +1 -0
  44. package/calendar/public_api.d.ts.map +1 -0
  45. package/card/card-as-button/card-as-button.directive.d.ts +1 -0
  46. package/card/card-as-button/card-as-button.directive.d.ts.map +1 -0
  47. package/card/card-flag-level.d.ts +1 -0
  48. package/card/card-flag-level.d.ts.map +1 -0
  49. package/card/card-footer/card-footer.component.d.ts +1 -0
  50. package/card/card-footer/card-footer.component.d.ts.map +1 -0
  51. package/card/card-header/card-header.component.d.ts +1 -0
  52. package/card/card-header/card-header.component.d.ts.map +1 -0
  53. package/card/card.component.d.ts +1 -0
  54. package/card/card.component.d.ts.map +1 -0
  55. package/card/card.module.d.ts +1 -0
  56. package/card/card.module.d.ts.map +1 -0
  57. package/card/index.d.ts +1 -0
  58. package/card/kirbydesign-designsystem-card.d.ts.map +1 -0
  59. package/card/public_api.d.ts +1 -0
  60. package/card/public_api.d.ts.map +1 -0
  61. package/chart/chart/chart.component.d.ts +1 -0
  62. package/chart/chart/chart.component.d.ts.map +1 -0
  63. package/chart/chart/index.d.ts +1 -0
  64. package/chart/chart/index.d.ts.map +1 -0
  65. package/chart/chart-config/chart-bar-config/chart-bar-config.d.ts +1 -0
  66. package/chart/chart-config/chart-bar-config/chart-bar-config.d.ts.map +1 -0
  67. package/chart/chart-config/chart-base-config.d.ts +1 -0
  68. package/chart/chart-config/chart-base-config.d.ts.map +1 -0
  69. package/chart/chart-config/chart-stock-config/chart-stock-config.d.ts +1 -0
  70. package/chart/chart-config/chart-stock-config/chart-stock-config.d.ts.map +1 -0
  71. package/chart/chart-config/chart-stock-config/data-label-position/data-label-position.d.ts +1 -0
  72. package/chart/chart-config/chart-stock-config/data-label-position/data-label-position.d.ts.map +1 -0
  73. package/chart/chart-config/chart-stock-config/vertical-line-plugin/vertical-line-plugin.d.ts +1 -0
  74. package/chart/chart-config/chart-stock-config/vertical-line-plugin/vertical-line-plugin.d.ts.map +1 -0
  75. package/chart/chart-config/chart-stock-config/vertical-line-plugin/vertical-line-plugin.model.d.ts +1 -0
  76. package/chart/chart-config/chart-stock-config/vertical-line-plugin/vertical-line-plugin.model.d.ts.map +1 -0
  77. package/chart/charts.module.d.ts +1 -0
  78. package/chart/charts.module.d.ts.map +1 -0
  79. package/chart/index.d.ts +1 -0
  80. package/chart/kirbydesign-designsystem-chart.d.ts.map +1 -0
  81. package/chart/public_api.d.ts +1 -0
  82. package/chart/public_api.d.ts.map +1 -0
  83. package/chart/shared/base-chart/base-chart.component.d.ts +1 -0
  84. package/chart/shared/base-chart/base-chart.component.d.ts.map +1 -0
  85. package/chart/shared/base-chart/index.d.ts +1 -0
  86. package/chart/shared/base-chart/index.d.ts.map +1 -0
  87. package/chart/shared/chart-config-service/chart-config.service.d.ts +2 -1
  88. package/chart/shared/chart-config-service/chart-config.service.d.ts.map +1 -0
  89. package/chart/shared/chart-config-service/configs/annotations.config.d.ts +1 -0
  90. package/chart/shared/chart-config-service/configs/annotations.config.d.ts.map +1 -0
  91. package/chart/shared/chart-config-service/configs/global-defaults.config.d.ts +1 -0
  92. package/chart/shared/chart-config-service/configs/global-defaults.config.d.ts.map +1 -0
  93. package/chart/shared/chart-config-service/configs/interaction-functions-extensions.config.d.ts +1 -0
  94. package/chart/shared/chart-config-service/configs/interaction-functions-extensions.config.d.ts.map +1 -0
  95. package/chart/shared/chart-config-service/configs/type.config.d.ts +1 -0
  96. package/chart/shared/chart-config-service/configs/type.config.d.ts.map +1 -0
  97. package/chart/shared/chart-config-service/index.d.ts +1 -0
  98. package/chart/shared/chart-config-service/index.d.ts.map +1 -0
  99. package/chart/shared/chart-js-service/annotations.delegate.d.ts +1 -0
  100. package/chart/shared/chart-js-service/annotations.delegate.d.ts.map +1 -0
  101. package/chart/shared/chart-js-service/chart-js.service.d.ts +1 -0
  102. package/chart/shared/chart-js-service/chart-js.service.d.ts.map +1 -0
  103. package/chart/shared/chart-js-service/chartjs-plugin-marker/chartjs-plugin-marker.d.ts +1 -0
  104. package/chart/shared/chart-js-service/chartjs-plugin-marker/chartjs-plugin-marker.d.ts.map +1 -0
  105. package/chart/shared/chart-js-service/configured-chart-js.d.ts +1 -0
  106. package/chart/shared/chart-js-service/configured-chart-js.d.ts.map +1 -0
  107. package/chart/shared/chart-js-service/index.d.ts +1 -0
  108. package/chart/shared/chart-js-service/index.d.ts.map +1 -0
  109. package/chart/shared/chart-js-service/test-utils.d.ts +1 -0
  110. package/chart/shared/chart-js-service/test-utils.d.ts.map +1 -0
  111. package/chart/shared/charts.types.d.ts +1 -0
  112. package/chart/shared/charts.types.d.ts.map +1 -0
  113. package/chart/shared/index.d.ts +1 -0
  114. package/chart/shared/index.d.ts.map +1 -0
  115. package/chart/stock-chart/index.d.ts +1 -0
  116. package/chart/stock-chart/index.d.ts.map +1 -0
  117. package/chart/stock-chart/stock-chart-js.service.d.ts +1 -0
  118. package/chart/stock-chart/stock-chart-js.service.d.ts.map +1 -0
  119. package/chart/stock-chart/stock-chart.component.d.ts +1 -0
  120. package/chart/stock-chart/stock-chart.component.d.ts.map +1 -0
  121. package/checkbox/checkbox.component.d.ts +1 -0
  122. package/checkbox/checkbox.component.d.ts.map +1 -0
  123. package/checkbox/index.d.ts +1 -0
  124. package/checkbox/kirbydesign-designsystem-checkbox.d.ts.map +1 -0
  125. package/checkbox/public_api.d.ts +1 -0
  126. package/checkbox/public_api.d.ts.map +1 -0
  127. package/data-table/data-table.module.d.ts +1 -0
  128. package/data-table/data-table.module.d.ts.map +1 -0
  129. package/data-table/index.d.ts +1 -0
  130. package/data-table/kirbydesign-designsystem-data-table.d.ts.map +1 -0
  131. package/data-table/public_api.d.ts +1 -0
  132. package/data-table/public_api.d.ts.map +1 -0
  133. package/data-table/sortable/sortable.component.d.ts +1 -0
  134. package/data-table/sortable/sortable.component.d.ts.map +1 -0
  135. package/divider/divider.component.d.ts +1 -0
  136. package/divider/divider.component.d.ts.map +1 -0
  137. package/divider/index.d.ts +1 -0
  138. package/divider/kirbydesign-designsystem-divider.d.ts.map +1 -0
  139. package/divider/public_api.d.ts +1 -0
  140. package/divider/public_api.d.ts.map +1 -0
  141. package/dropdown/dropdown.component.d.ts +1 -0
  142. package/dropdown/dropdown.component.d.ts.map +1 -0
  143. package/dropdown/dropdown.module.d.ts +1 -0
  144. package/dropdown/dropdown.module.d.ts.map +1 -0
  145. package/dropdown/dropdown.types.d.ts +1 -0
  146. package/dropdown/dropdown.types.d.ts.map +1 -0
  147. package/dropdown/index.d.ts +1 -0
  148. package/dropdown/keyboard-handler.service.d.ts +1 -0
  149. package/dropdown/keyboard-handler.service.d.ts.map +1 -0
  150. package/dropdown/kirbydesign-designsystem-dropdown.d.ts.map +1 -0
  151. package/dropdown/public_api.d.ts +1 -0
  152. package/dropdown/public_api.d.ts.map +1 -0
  153. package/empty-state/empty-state.component.d.ts +1 -0
  154. package/empty-state/empty-state.component.d.ts.map +1 -0
  155. package/empty-state/empty-state.module.d.ts +1 -0
  156. package/empty-state/empty-state.module.d.ts.map +1 -0
  157. package/empty-state/index.d.ts +1 -0
  158. package/empty-state/kirbydesign-designsystem-empty-state.d.ts.map +1 -0
  159. package/empty-state/public_api.d.ts +1 -0
  160. package/empty-state/public_api.d.ts.map +1 -0
  161. package/fab-sheet/fab-sheet.component.d.ts +1 -0
  162. package/fab-sheet/fab-sheet.component.d.ts.map +1 -0
  163. package/fab-sheet/index.d.ts +1 -0
  164. package/fab-sheet/kirbydesign-designsystem-fab-sheet.d.ts.map +1 -0
  165. package/fab-sheet/public_api.d.ts +1 -0
  166. package/fab-sheet/public_api.d.ts.map +1 -0
  167. package/fesm2022/kirbydesign-designsystem-accordion.mjs +12 -11
  168. package/fesm2022/kirbydesign-designsystem-accordion.mjs.map +1 -1
  169. package/fesm2022/kirbydesign-designsystem-action-group.mjs +4 -4
  170. package/fesm2022/kirbydesign-designsystem-action-group.mjs.map +1 -1
  171. package/fesm2022/kirbydesign-designsystem-avatar.mjs +4 -4
  172. package/fesm2022/kirbydesign-designsystem-avatar.mjs.map +1 -1
  173. package/fesm2022/kirbydesign-designsystem-badge.mjs +4 -4
  174. package/fesm2022/kirbydesign-designsystem-badge.mjs.map +1 -1
  175. package/fesm2022/kirbydesign-designsystem-button.mjs +4 -4
  176. package/fesm2022/kirbydesign-designsystem-button.mjs.map +1 -1
  177. package/fesm2022/kirbydesign-designsystem-calendar.mjs +11 -10
  178. package/fesm2022/kirbydesign-designsystem-calendar.mjs.map +1 -1
  179. package/fesm2022/kirbydesign-designsystem-card.mjs +20 -19
  180. package/fesm2022/kirbydesign-designsystem-card.mjs.map +1 -1
  181. package/fesm2022/kirbydesign-designsystem-chart.mjs +25 -25
  182. package/fesm2022/kirbydesign-designsystem-chart.mjs.map +1 -1
  183. package/fesm2022/kirbydesign-designsystem-checkbox.mjs +4 -4
  184. package/fesm2022/kirbydesign-designsystem-checkbox.mjs.map +1 -1
  185. package/fesm2022/kirbydesign-designsystem-data-table.mjs +8 -8
  186. package/fesm2022/kirbydesign-designsystem-data-table.mjs.map +1 -1
  187. package/fesm2022/kirbydesign-designsystem-divider.mjs +4 -4
  188. package/fesm2022/kirbydesign-designsystem-divider.mjs.map +1 -1
  189. package/fesm2022/kirbydesign-designsystem-dropdown.mjs +12 -12
  190. package/fesm2022/kirbydesign-designsystem-dropdown.mjs.map +1 -1
  191. package/fesm2022/kirbydesign-designsystem-empty-state.mjs +8 -8
  192. package/fesm2022/kirbydesign-designsystem-empty-state.mjs.map +1 -1
  193. package/fesm2022/kirbydesign-designsystem-fab-sheet.mjs +4 -4
  194. package/fesm2022/kirbydesign-designsystem-fab-sheet.mjs.map +1 -1
  195. package/fesm2022/kirbydesign-designsystem-flag.mjs +4 -4
  196. package/fesm2022/kirbydesign-designsystem-flag.mjs.map +1 -1
  197. package/fesm2022/kirbydesign-designsystem-form-field.mjs +34 -34
  198. package/fesm2022/kirbydesign-designsystem-form-field.mjs.map +1 -1
  199. package/fesm2022/kirbydesign-designsystem-header.mjs +24 -20
  200. package/fesm2022/kirbydesign-designsystem-header.mjs.map +1 -1
  201. package/fesm2022/kirbydesign-designsystem-helpers-scss.mjs.map +1 -1
  202. package/fesm2022/kirbydesign-designsystem-helpers.mjs +9 -9
  203. package/fesm2022/kirbydesign-designsystem-helpers.mjs.map +1 -1
  204. package/fesm2022/kirbydesign-designsystem-icon.mjs +29 -13
  205. package/fesm2022/kirbydesign-designsystem-icon.mjs.map +1 -1
  206. package/fesm2022/kirbydesign-designsystem-item-group.mjs +4 -4
  207. package/fesm2022/kirbydesign-designsystem-item-group.mjs.map +1 -1
  208. package/fesm2022/kirbydesign-designsystem-item-sliding.mjs +4 -4
  209. package/fesm2022/kirbydesign-designsystem-item-sliding.mjs.map +1 -1
  210. package/fesm2022/kirbydesign-designsystem-item.mjs +12 -12
  211. package/fesm2022/kirbydesign-designsystem-item.mjs.map +1 -1
  212. package/fesm2022/kirbydesign-designsystem-kirby-app.mjs +8 -8
  213. package/fesm2022/kirbydesign-designsystem-kirby-app.mjs.map +1 -1
  214. package/fesm2022/kirbydesign-designsystem-kirby-ionic-module.mjs +4 -4
  215. package/fesm2022/kirbydesign-designsystem-kirby-ionic-module.mjs.map +1 -1
  216. package/fesm2022/kirbydesign-designsystem-list.mjs +51 -45
  217. package/fesm2022/kirbydesign-designsystem-list.mjs.map +1 -1
  218. package/fesm2022/kirbydesign-designsystem-loading-overlay.mjs +7 -7
  219. package/fesm2022/kirbydesign-designsystem-loading-overlay.mjs.map +1 -1
  220. package/fesm2022/kirbydesign-designsystem-menu.mjs +4 -4
  221. package/fesm2022/kirbydesign-designsystem-menu.mjs.map +1 -1
  222. package/fesm2022/kirbydesign-designsystem-modal.mjs +55 -52
  223. package/fesm2022/kirbydesign-designsystem-modal.mjs.map +1 -1
  224. package/fesm2022/kirbydesign-designsystem-page.mjs +52 -44
  225. package/fesm2022/kirbydesign-designsystem-page.mjs.map +1 -1
  226. package/fesm2022/kirbydesign-designsystem-popover.mjs +4 -4
  227. package/fesm2022/kirbydesign-designsystem-popover.mjs.map +1 -1
  228. package/fesm2022/kirbydesign-designsystem-progress-circle.mjs +8 -8
  229. package/fesm2022/kirbydesign-designsystem-progress-circle.mjs.map +1 -1
  230. package/fesm2022/kirbydesign-designsystem-radio.mjs +21 -23
  231. package/fesm2022/kirbydesign-designsystem-radio.mjs.map +1 -1
  232. package/fesm2022/kirbydesign-designsystem-range.mjs +4 -4
  233. package/fesm2022/kirbydesign-designsystem-range.mjs.map +1 -1
  234. package/fesm2022/kirbydesign-designsystem-reorder-list.mjs +5 -5
  235. package/fesm2022/kirbydesign-designsystem-reorder-list.mjs.map +1 -1
  236. package/fesm2022/kirbydesign-designsystem-router-outlet.mjs +8 -8
  237. package/fesm2022/kirbydesign-designsystem-router-outlet.mjs.map +1 -1
  238. package/fesm2022/kirbydesign-designsystem-section-header.mjs +4 -4
  239. package/fesm2022/kirbydesign-designsystem-section-header.mjs.map +1 -1
  240. package/fesm2022/kirbydesign-designsystem-shared-floating.mjs +3 -3
  241. package/fesm2022/kirbydesign-designsystem-shared-floating.mjs.map +1 -1
  242. package/fesm2022/kirbydesign-designsystem-shared-portal.mjs +3 -3
  243. package/fesm2022/kirbydesign-designsystem-shared-portal.mjs.map +1 -1
  244. package/fesm2022/kirbydesign-designsystem-shared.mjs +18 -18
  245. package/fesm2022/kirbydesign-designsystem-shared.mjs.map +1 -1
  246. package/fesm2022/kirbydesign-designsystem-slide-button.mjs +4 -4
  247. package/fesm2022/kirbydesign-designsystem-slide-button.mjs.map +1 -1
  248. package/fesm2022/kirbydesign-designsystem-slide.mjs +16 -14
  249. package/fesm2022/kirbydesign-designsystem-slide.mjs.map +1 -1
  250. package/fesm2022/kirbydesign-designsystem-spinner.mjs +8 -8
  251. package/fesm2022/kirbydesign-designsystem-spinner.mjs.map +1 -1
  252. package/fesm2022/kirbydesign-designsystem-tab-navigation.mjs +12 -12
  253. package/fesm2022/kirbydesign-designsystem-tab-navigation.mjs.map +1 -1
  254. package/fesm2022/kirbydesign-designsystem-tabs.mjs +15 -15
  255. package/fesm2022/kirbydesign-designsystem-tabs.mjs.map +1 -1
  256. package/fesm2022/kirbydesign-designsystem-testing-base.mjs +287 -354
  257. package/fesm2022/kirbydesign-designsystem-testing-base.mjs.map +1 -1
  258. package/fesm2022/kirbydesign-designsystem-testing-jasmine.mjs +4 -4
  259. package/fesm2022/kirbydesign-designsystem-testing-jasmine.mjs.map +1 -1
  260. package/fesm2022/kirbydesign-designsystem-testing-jest.mjs +4 -4
  261. package/fesm2022/kirbydesign-designsystem-testing-jest.mjs.map +1 -1
  262. package/fesm2022/kirbydesign-designsystem-testing.mjs +4 -4
  263. package/fesm2022/kirbydesign-designsystem-testing.mjs.map +1 -1
  264. package/fesm2022/kirbydesign-designsystem-toast.mjs +6 -6
  265. package/fesm2022/kirbydesign-designsystem-toast.mjs.map +1 -1
  266. package/fesm2022/kirbydesign-designsystem-toggle-button.mjs +19 -10
  267. package/fesm2022/kirbydesign-designsystem-toggle-button.mjs.map +1 -1
  268. package/fesm2022/kirbydesign-designsystem-toggle.mjs +4 -4
  269. package/fesm2022/kirbydesign-designsystem-toggle.mjs.map +1 -1
  270. package/fesm2022/kirbydesign-designsystem-types.mjs +3 -3
  271. package/fesm2022/kirbydesign-designsystem-types.mjs.map +1 -1
  272. package/fesm2022/kirbydesign-designsystem.mjs +16 -14
  273. package/fesm2022/kirbydesign-designsystem.mjs.map +1 -1
  274. package/flag/flag.component.d.ts +1 -0
  275. package/flag/flag.component.d.ts.map +1 -0
  276. package/flag/index.d.ts +1 -0
  277. package/flag/kirbydesign-designsystem-flag.d.ts.map +1 -0
  278. package/flag/public_api.d.ts +1 -0
  279. package/flag/public_api.d.ts.map +1 -0
  280. package/form-field/directives/affix/affix.directive.d.ts +1 -0
  281. package/form-field/directives/affix/affix.directive.d.ts.map +1 -0
  282. package/form-field/directives/date/date-input.directive.d.ts +1 -0
  283. package/form-field/directives/date/date-input.directive.d.ts.map +1 -0
  284. package/form-field/directives/decimal-mask/decimal-mask.directive.d.ts +1 -0
  285. package/form-field/directives/decimal-mask/decimal-mask.directive.d.ts.map +1 -0
  286. package/form-field/form-field-message/form-field-message.component.d.ts +1 -0
  287. package/form-field/form-field-message/form-field-message.component.d.ts.map +1 -0
  288. package/form-field/form-field.component.d.ts +1 -0
  289. package/form-field/form-field.component.d.ts.map +1 -0
  290. package/form-field/form-field.module.d.ts +1 -0
  291. package/form-field/form-field.module.d.ts.map +1 -0
  292. package/form-field/index.d.ts +1 -0
  293. package/form-field/input/input.component.d.ts +1 -0
  294. package/form-field/input/input.component.d.ts.map +1 -0
  295. package/form-field/input-counter/input-counter.component.d.ts +1 -0
  296. package/form-field/input-counter/input-counter.component.d.ts.map +1 -0
  297. package/form-field/kirbydesign-designsystem-form-field.d.ts.map +1 -0
  298. package/form-field/public_api.d.ts +1 -0
  299. package/form-field/public_api.d.ts.map +1 -0
  300. package/form-field/textarea/textarea.component.d.ts +1 -0
  301. package/form-field/textarea/textarea.component.d.ts.map +1 -0
  302. package/header/header.component.d.ts +1 -0
  303. package/header/header.component.d.ts.map +1 -0
  304. package/header/header.module.d.ts +1 -0
  305. package/header/header.module.d.ts.map +1 -0
  306. package/header/index.d.ts +1 -0
  307. package/header/kirbydesign-designsystem-header.d.ts.map +1 -0
  308. package/header/public_api.d.ts +1 -0
  309. package/header/public_api.d.ts.map +1 -0
  310. package/helpers/chart-config-has-type.d.ts +1 -0
  311. package/helpers/chart-config-has-type.d.ts.map +1 -0
  312. package/helpers/color-helper.d.ts +1 -0
  313. package/helpers/color-helper.d.ts.map +1 -0
  314. package/helpers/content-mutation-observer.d.ts +1 -0
  315. package/helpers/content-mutation-observer.d.ts.map +1 -0
  316. package/helpers/deep-copy.d.ts +1 -0
  317. package/helpers/deep-copy.d.ts.map +1 -0
  318. package/helpers/design-token-helper.d.ts +1 -0
  319. package/helpers/design-token-helper.d.ts.map +1 -0
  320. package/helpers/element-ancestor-utils.d.ts +1 -0
  321. package/helpers/element-ancestor-utils.d.ts.map +1 -0
  322. package/helpers/index.d.ts +1 -0
  323. package/helpers/ionic-element-part-helper.d.ts +1 -0
  324. package/helpers/ionic-element-part-helper.d.ts.map +1 -0
  325. package/helpers/kirby-animation.d.ts +1 -0
  326. package/helpers/kirby-animation.d.ts.map +1 -0
  327. package/helpers/kirbydesign-designsystem-helpers.d.ts.map +1 -0
  328. package/helpers/line-clamp-helper.d.ts +1 -0
  329. package/helpers/line-clamp-helper.d.ts.map +1 -0
  330. package/helpers/merge-deep.d.ts +1 -0
  331. package/helpers/merge-deep.d.ts.map +1 -0
  332. package/helpers/platform.service.d.ts +1 -0
  333. package/helpers/platform.service.d.ts.map +1 -0
  334. package/helpers/public_api.d.ts +1 -0
  335. package/helpers/public_api.d.ts.map +1 -0
  336. package/helpers/scss/index.d.ts +1 -0
  337. package/helpers/scss/kirbydesign-designsystem-helpers-scss.d.ts.map +1 -0
  338. package/helpers/scss/public_api.d.ts +1 -0
  339. package/helpers/scss/public_api.d.ts.map +1 -0
  340. package/helpers/scss/scss-helper.d.ts +1 -0
  341. package/helpers/scss/scss-helper.d.ts.map +1 -0
  342. package/helpers/string-helper.d.ts +1 -0
  343. package/helpers/string-helper.d.ts.map +1 -0
  344. package/helpers/theme-color.type.d.ts +1 -0
  345. package/helpers/theme-color.type.d.ts.map +1 -0
  346. package/helpers/unique-id-generator.helper.d.ts +1 -0
  347. package/helpers/unique-id-generator.helper.d.ts.map +1 -0
  348. package/icon/icon-registry.service.d.ts +1 -0
  349. package/icon/icon-registry.service.d.ts.map +1 -0
  350. package/icon/icon-settings.d.ts +1 -0
  351. package/icon/icon-settings.d.ts.map +1 -0
  352. package/icon/icon.component.d.ts +7 -2
  353. package/icon/icon.component.d.ts.map +1 -0
  354. package/icon/icon.module.d.ts +1 -0
  355. package/icon/icon.module.d.ts.map +1 -0
  356. package/icon/index.d.ts +1 -0
  357. package/icon/kirby-icon-settings.d.ts +1 -0
  358. package/icon/kirby-icon-settings.d.ts.map +1 -0
  359. package/icon/kirbydesign-designsystem-icon.d.ts.map +1 -0
  360. package/icon/public_api.d.ts +1 -0
  361. package/icon/public_api.d.ts.map +1 -0
  362. package/icons/svg/expense.svg +1 -0
  363. package/icons/svg/income.svg +1 -0
  364. package/icons/svg/notification-fill.svg +1 -0
  365. package/icons/svg/signed-document.svg +1 -0
  366. package/index.d.ts +1 -0
  367. package/item/index.d.ts +1 -0
  368. package/item/item.component.d.ts +1 -0
  369. package/item/item.component.d.ts.map +1 -0
  370. package/item/item.module.d.ts +1 -0
  371. package/item/item.module.d.ts.map +1 -0
  372. package/item/kirbydesign-designsystem-item.d.ts.map +1 -0
  373. package/item/label/label.component.d.ts +1 -0
  374. package/item/label/label.component.d.ts.map +1 -0
  375. package/item/public_api.d.ts +1 -0
  376. package/item/public_api.d.ts.map +1 -0
  377. package/item-group/index.d.ts +1 -0
  378. package/item-group/item-group.component.d.ts +1 -0
  379. package/item-group/item-group.component.d.ts.map +1 -0
  380. package/item-group/kirbydesign-designsystem-item-group.d.ts.map +1 -0
  381. package/item-group/public_api.d.ts +1 -0
  382. package/item-group/public_api.d.ts.map +1 -0
  383. package/item-sliding/index.d.ts +1 -0
  384. package/item-sliding/item-sliding.component.d.ts +1 -0
  385. package/item-sliding/item-sliding.component.d.ts.map +1 -0
  386. package/item-sliding/item-sliding.types.d.ts +1 -0
  387. package/item-sliding/item-sliding.types.d.ts.map +1 -0
  388. package/item-sliding/kirbydesign-designsystem-item-sliding.d.ts.map +1 -0
  389. package/item-sliding/public_api.d.ts +1 -0
  390. package/item-sliding/public_api.d.ts.map +1 -0
  391. package/kirby-app/index.d.ts +1 -0
  392. package/kirby-app/kirby-app.component.d.ts +1 -0
  393. package/kirby-app/kirby-app.component.d.ts.map +1 -0
  394. package/kirby-app/kirby-app.module.d.ts +1 -0
  395. package/kirby-app/kirby-app.module.d.ts.map +1 -0
  396. package/kirby-app/kirbydesign-designsystem-kirby-app.d.ts.map +1 -0
  397. package/kirby-app/public_api.d.ts +1 -0
  398. package/kirby-app/public_api.d.ts.map +1 -0
  399. package/kirby-ionic-module/index.d.ts +1 -0
  400. package/kirby-ionic-module/kirby-ionic.module.d.ts +1 -0
  401. package/kirby-ionic-module/kirby-ionic.module.d.ts.map +1 -0
  402. package/kirby-ionic-module/kirbydesign-designsystem-kirby-ionic-module.d.ts.map +1 -0
  403. package/kirby-ionic-module/public_api.d.ts +1 -0
  404. package/kirby-ionic-module/public_api.d.ts.map +1 -0
  405. package/kirbydesign-designsystem.d.ts.map +1 -0
  406. package/lib/components/index.d.ts +1 -0
  407. package/lib/components/index.d.ts.map +1 -0
  408. package/lib/components/segmented-control/segment-item.d.ts +1 -0
  409. package/lib/components/segmented-control/segment-item.d.ts.map +1 -0
  410. package/lib/components/segmented-control/segmented-control.component.d.ts +1 -2
  411. package/lib/components/segmented-control/segmented-control.component.d.ts.map +1 -0
  412. package/lib/directives/index.d.ts +1 -0
  413. package/lib/directives/index.d.ts.map +1 -0
  414. package/lib/directives/key-handler/key-handler.directive.d.ts +1 -0
  415. package/lib/directives/key-handler/key-handler.directive.d.ts.map +1 -0
  416. package/lib/directives/modal-router-link/modal-router-link.directive.d.ts +1 -0
  417. package/lib/directives/modal-router-link/modal-router-link.directive.d.ts.map +1 -0
  418. package/lib/index.d.ts +1 -0
  419. package/lib/index.d.ts.map +1 -0
  420. package/lib/kirby.module.d.ts +1 -0
  421. package/lib/kirby.module.d.ts.map +1 -0
  422. package/list/directives/index.d.ts +1 -0
  423. package/list/directives/index.d.ts.map +1 -0
  424. package/list/directives/infinite-scroll.directive.d.ts +1 -0
  425. package/list/directives/infinite-scroll.directive.d.ts.map +1 -0
  426. package/list/directives/list-item-color.directive.d.ts +1 -0
  427. package/list/directives/list-item-color.directive.d.ts.map +1 -0
  428. package/list/directives/scroll.model.d.ts +1 -0
  429. package/list/directives/scroll.model.d.ts.map +1 -0
  430. package/list/helpers/index.d.ts +1 -0
  431. package/list/helpers/index.d.ts.map +1 -0
  432. package/list/helpers/list-helper.d.ts +1 -0
  433. package/list/helpers/list-helper.d.ts.map +1 -0
  434. package/list/index.d.ts +1 -0
  435. package/list/kirbydesign-designsystem-list.d.ts.map +1 -0
  436. package/list/list-experimental/index.d.ts +1 -0
  437. package/list/list-experimental/index.d.ts.map +1 -0
  438. package/list/list-experimental/list-experimental.component.d.ts +1 -0
  439. package/list/list-experimental/list-experimental.component.d.ts.map +1 -0
  440. package/list/list-header/index.d.ts +1 -0
  441. package/list/list-header/index.d.ts.map +1 -0
  442. package/list/list-header/list-header.component.d.ts +1 -0
  443. package/list/list-header/list-header.component.d.ts.map +1 -0
  444. package/list/list-item/index.d.ts +1 -0
  445. package/list/list-item/index.d.ts.map +1 -0
  446. package/list/list-item/list-item.component.d.ts +1 -0
  447. package/list/list-item/list-item.component.d.ts.map +1 -0
  448. package/list/list-section-header/index.d.ts +1 -0
  449. package/list/list-section-header/index.d.ts.map +1 -0
  450. package/list/list-section-header/list-section-header.component.d.ts +1 -0
  451. package/list/list-section-header/list-section-header.component.d.ts.map +1 -0
  452. package/list/list-swipe-action.d.ts +1 -0
  453. package/list/list-swipe-action.d.ts.map +1 -0
  454. package/list/list-swipe-action.type.d.ts +1 -0
  455. package/list/list-swipe-action.type.d.ts.map +1 -0
  456. package/list/list.component.d.ts +1 -0
  457. package/list/list.component.d.ts.map +1 -0
  458. package/list/list.directive.d.ts +1 -0
  459. package/list/list.directive.d.ts.map +1 -0
  460. package/list/list.event.d.ts +1 -0
  461. package/list/list.event.d.ts.map +1 -0
  462. package/list/list.module.d.ts +1 -0
  463. package/list/list.module.d.ts.map +1 -0
  464. package/list/public_api.d.ts +1 -0
  465. package/list/public_api.d.ts.map +1 -0
  466. package/loading-overlay/index.d.ts +1 -0
  467. package/loading-overlay/kirbydesign-designsystem-loading-overlay.d.ts.map +1 -0
  468. package/loading-overlay/loading-overlay.component.d.ts +1 -0
  469. package/loading-overlay/loading-overlay.component.d.ts.map +1 -0
  470. package/loading-overlay/loading-overlay.service.d.ts +1 -0
  471. package/loading-overlay/loading-overlay.service.d.ts.map +1 -0
  472. package/loading-overlay/public_api.d.ts +1 -0
  473. package/loading-overlay/public_api.d.ts.map +1 -0
  474. package/menu/index.d.ts +1 -0
  475. package/menu/kirbydesign-designsystem-menu.d.ts.map +1 -0
  476. package/menu/menu.component.d.ts +1 -0
  477. package/menu/menu.component.d.ts.map +1 -0
  478. package/menu/public_api.d.ts +1 -0
  479. package/menu/public_api.d.ts.map +1 -0
  480. package/modal/index.d.ts +1 -0
  481. package/modal/kirbydesign-designsystem-modal.d.ts.map +1 -0
  482. package/modal/modal/action-sheet/action-sheet.component.d.ts +1 -0
  483. package/modal/modal/action-sheet/action-sheet.component.d.ts.map +1 -0
  484. package/modal/modal/action-sheet/config/action-sheet-config.d.ts +1 -0
  485. package/modal/modal/action-sheet/config/action-sheet-config.d.ts.map +1 -0
  486. package/modal/modal/action-sheet/config/action-sheet-item.d.ts +1 -0
  487. package/modal/modal/action-sheet/config/action-sheet-item.d.ts.map +1 -0
  488. package/modal/modal/action-sheet/index.d.ts +1 -0
  489. package/modal/modal/action-sheet/index.d.ts.map +1 -0
  490. package/modal/modal/alert/alert.component.d.ts +1 -0
  491. package/modal/modal/alert/alert.component.d.ts.map +1 -0
  492. package/modal/modal/alert/config/alert-config.d.ts +1 -0
  493. package/modal/modal/alert/config/alert-config.d.ts.map +1 -0
  494. package/modal/modal/alert/index.d.ts +1 -0
  495. package/modal/modal/alert/index.d.ts.map +1 -0
  496. package/modal/modal/footer/modal-footer.component.d.ts +1 -0
  497. package/modal/modal/footer/modal-footer.component.d.ts.map +1 -0
  498. package/modal/modal/index.d.ts +1 -0
  499. package/modal/modal/index.d.ts.map +1 -0
  500. package/modal/modal/modal-component/modal.component.d.ts +1 -0
  501. package/modal/modal/modal-component/modal.component.d.ts.map +1 -0
  502. package/modal/modal/services/action-sheet.helper.d.ts +1 -0
  503. package/modal/modal/services/action-sheet.helper.d.ts.map +1 -0
  504. package/modal/modal/services/alert.helper.d.ts +1 -0
  505. package/modal/modal/services/alert.helper.d.ts.map +1 -0
  506. package/modal/modal/services/can-dismiss-modal-guard.d.ts +1 -0
  507. package/modal/modal/services/can-dismiss-modal-guard.d.ts.map +1 -0
  508. package/modal/modal/services/can-dismiss.helper.d.ts +1 -0
  509. package/modal/modal/services/can-dismiss.helper.d.ts.map +1 -0
  510. package/modal/modal/services/index.d.ts +1 -0
  511. package/modal/modal/services/index.d.ts.map +1 -0
  512. package/modal/modal/services/modal-animation-builder.service.d.ts +1 -0
  513. package/modal/modal/services/modal-animation-builder.service.d.ts.map +1 -0
  514. package/modal/modal/services/modal.controller.d.ts +1 -0
  515. package/modal/modal/services/modal.controller.d.ts.map +1 -0
  516. package/modal/modal/services/modal.helper.d.ts +1 -0
  517. package/modal/modal/services/modal.helper.d.ts.map +1 -0
  518. package/modal/modal-navigation.service.d.ts +1 -0
  519. package/modal/modal-navigation.service.d.ts.map +1 -0
  520. package/modal/modal-wrapper/compact/index.d.ts +1 -0
  521. package/modal/modal-wrapper/compact/index.d.ts.map +1 -0
  522. package/modal/modal-wrapper/compact/modal-compact-wrapper.component.d.ts +1 -0
  523. package/modal/modal-wrapper/compact/modal-compact-wrapper.component.d.ts.map +1 -0
  524. package/modal/modal-wrapper/config/drawer-supplementary-action.d.ts +1 -0
  525. package/modal/modal-wrapper/config/drawer-supplementary-action.d.ts.map +1 -0
  526. package/modal/modal-wrapper/config/index.d.ts +1 -0
  527. package/modal/modal-wrapper/config/index.d.ts.map +1 -0
  528. package/modal/modal-wrapper/config/modal-config.d.ts +1 -0
  529. package/modal/modal-wrapper/config/modal-config.d.ts.map +1 -0
  530. package/modal/modal-wrapper/config/modal-config.helper.d.ts +1 -0
  531. package/modal/modal-wrapper/config/modal-config.helper.d.ts.map +1 -0
  532. package/modal/modal-wrapper/index.d.ts +1 -0
  533. package/modal/modal-wrapper/index.d.ts.map +1 -0
  534. package/modal/modal-wrapper/modal-elements-mover.delegate.d.ts +1 -0
  535. package/modal/modal-wrapper/modal-elements-mover.delegate.d.ts.map +1 -0
  536. package/modal/modal-wrapper/modal-wrapper.component.d.ts +1 -0
  537. package/modal/modal-wrapper/modal-wrapper.component.d.ts.map +1 -0
  538. package/modal/modal.interfaces.d.ts +1 -0
  539. package/modal/modal.interfaces.d.ts.map +1 -0
  540. package/modal/public_api.d.ts +1 -0
  541. package/modal/public_api.d.ts.map +1 -0
  542. package/package.json +11 -118
  543. package/page/index.d.ts +1 -0
  544. package/page/kirbydesign-designsystem-page.d.ts.map +1 -0
  545. package/page/page-footer/page-footer.component.d.ts +1 -0
  546. package/page/page-footer/page-footer.component.d.ts.map +1 -0
  547. package/page/page.component.d.ts +1 -0
  548. package/page/page.component.d.ts.map +1 -0
  549. package/page/page.module.d.ts +1 -0
  550. package/page/page.module.d.ts.map +1 -0
  551. package/page/public_api.d.ts +1 -0
  552. package/page/public_api.d.ts.map +1 -0
  553. package/popover/index.d.ts +1 -0
  554. package/popover/kirbydesign-designsystem-popover.d.ts.map +1 -0
  555. package/popover/popover.component.d.ts +1 -0
  556. package/popover/popover.component.d.ts.map +1 -0
  557. package/popover/public_api.d.ts +1 -0
  558. package/popover/public_api.d.ts.map +1 -0
  559. package/progress-circle/index.d.ts +1 -0
  560. package/progress-circle/kirbydesign-designsystem-progress-circle.d.ts.map +1 -0
  561. package/progress-circle/progress-circle-ring.component.d.ts +1 -0
  562. package/progress-circle/progress-circle-ring.component.d.ts.map +1 -0
  563. package/progress-circle/progress-circle.component.d.ts +1 -0
  564. package/progress-circle/progress-circle.component.d.ts.map +1 -0
  565. package/progress-circle/public_api.d.ts +1 -0
  566. package/progress-circle/public_api.d.ts.map +1 -0
  567. package/public-api.d.ts +1 -0
  568. package/public-api.d.ts.map +1 -0
  569. package/radio/index.d.ts +1 -0
  570. package/radio/kirbydesign-designsystem-radio.d.ts.map +1 -0
  571. package/radio/public_api.d.ts +1 -0
  572. package/radio/public_api.d.ts.map +1 -0
  573. package/radio/radio-group/radio-group.component.d.ts +1 -0
  574. package/radio/radio-group/radio-group.component.d.ts.map +1 -0
  575. package/radio/radio-module.d.ts +1 -0
  576. package/radio/radio-module.d.ts.map +1 -0
  577. package/radio/radio.component.d.ts +1 -0
  578. package/radio/radio.component.d.ts.map +1 -0
  579. package/range/index.d.ts +1 -0
  580. package/range/kirbydesign-designsystem-range.d.ts.map +1 -0
  581. package/range/public_api.d.ts +1 -0
  582. package/range/public_api.d.ts.map +1 -0
  583. package/range/range.component.d.ts +1 -0
  584. package/range/range.component.d.ts.map +1 -0
  585. package/reorder-list/index.d.ts +1 -0
  586. package/reorder-list/kirbydesign-designsystem-reorder-list.d.ts.map +1 -0
  587. package/reorder-list/public_api.d.ts +1 -0
  588. package/reorder-list/public_api.d.ts.map +1 -0
  589. package/reorder-list/reorder-event.d.ts +1 -0
  590. package/reorder-list/reorder-event.d.ts.map +1 -0
  591. package/reorder-list/reorder-list.component.d.ts +1 -0
  592. package/reorder-list/reorder-list.component.d.ts.map +1 -0
  593. package/router-outlet/index.d.ts +1 -0
  594. package/router-outlet/kirbydesign-designsystem-router-outlet.d.ts.map +1 -0
  595. package/router-outlet/public_api.d.ts +1 -0
  596. package/router-outlet/public_api.d.ts.map +1 -0
  597. package/router-outlet/router-outlet.component.d.ts +1 -0
  598. package/router-outlet/router-outlet.component.d.ts.map +1 -0
  599. package/router-outlet/router-outlet.module.d.ts +1 -0
  600. package/router-outlet/router-outlet.module.d.ts.map +1 -0
  601. package/section-header/index.d.ts +1 -0
  602. package/section-header/kirbydesign-designsystem-section-header.d.ts.map +1 -0
  603. package/section-header/public_api.d.ts +1 -0
  604. package/section-header/public_api.d.ts.map +1 -0
  605. package/section-header/section-header.component.d.ts +1 -0
  606. package/section-header/section-header.component.d.ts.map +1 -0
  607. package/shared/component-configuration.d.ts +1 -0
  608. package/shared/component-configuration.d.ts.map +1 -0
  609. package/shared/component-loader.directive.d.ts +1 -0
  610. package/shared/component-loader.directive.d.ts.map +1 -0
  611. package/shared/controls/label-helpers.d.ts +1 -0
  612. package/shared/controls/label-helpers.d.ts.map +1 -0
  613. package/shared/dynamic-component.d.ts +1 -0
  614. package/shared/dynamic-component.d.ts.map +1 -0
  615. package/shared/fit-heading/fit-heading.directive.d.ts +1 -0
  616. package/shared/fit-heading/fit-heading.directive.d.ts.map +1 -0
  617. package/shared/fit-heading/index.d.ts +1 -0
  618. package/shared/fit-heading/index.d.ts.map +1 -0
  619. package/shared/floating/floating.directive.d.ts +1 -0
  620. package/shared/floating/floating.directive.d.ts.map +1 -0
  621. package/shared/floating/index.d.ts +1 -0
  622. package/shared/floating/kirbydesign-designsystem-shared-floating.d.ts.map +1 -0
  623. package/shared/floating/public_api.d.ts +1 -0
  624. package/shared/floating/public_api.d.ts.map +1 -0
  625. package/shared/index.d.ts +1 -0
  626. package/shared/kirbydesign-designsystem-shared.d.ts.map +1 -0
  627. package/shared/portal/index.d.ts +1 -0
  628. package/shared/portal/kirbydesign-designsystem-shared-portal.d.ts.map +1 -0
  629. package/shared/portal/portal.directive.d.ts +1 -0
  630. package/shared/portal/portal.directive.d.ts.map +1 -0
  631. package/shared/portal/public_api.d.ts +1 -0
  632. package/shared/portal/public_api.d.ts.map +1 -0
  633. package/shared/public_api.d.ts +1 -0
  634. package/shared/public_api.d.ts.map +1 -0
  635. package/shared/resize-observer/resize-observer.factory.d.ts +1 -0
  636. package/shared/resize-observer/resize-observer.factory.d.ts.map +1 -0
  637. package/shared/resize-observer/resize-observer.service.d.ts +1 -0
  638. package/shared/resize-observer/resize-observer.service.d.ts.map +1 -0
  639. package/shared/theme-color/theme-color.directive.d.ts +1 -0
  640. package/shared/theme-color/theme-color.directive.d.ts.map +1 -0
  641. package/shared/translation/translation.interface.d.ts +1 -0
  642. package/shared/translation/translation.interface.d.ts.map +1 -0
  643. package/shared/translation/translation.service.d.ts +1 -0
  644. package/shared/translation/translation.service.d.ts.map +1 -0
  645. package/shared/translation/translations/da.d.ts +1 -0
  646. package/shared/translation/translations/da.d.ts.map +1 -0
  647. package/shared/translation/translations/en.d.ts +1 -0
  648. package/shared/translation/translations/en.d.ts.map +1 -0
  649. package/slide/index.d.ts +1 -0
  650. package/slide/kirbydesign-designsystem-slide.d.ts.map +1 -0
  651. package/slide/public_api.d.ts +1 -0
  652. package/slide/public_api.d.ts.map +1 -0
  653. package/slide/slide-stretch-height.directive.d.ts +1 -0
  654. package/slide/slide-stretch-height.directive.d.ts.map +1 -0
  655. package/slide/slide.directive.d.ts +1 -0
  656. package/slide/slide.directive.d.ts.map +1 -0
  657. package/slide/slide.module.d.ts +1 -0
  658. package/slide/slide.module.d.ts.map +1 -0
  659. package/slide/slides.component.d.ts +1 -0
  660. package/slide/slides.component.d.ts.map +1 -0
  661. package/slide-button/index.d.ts +1 -0
  662. package/slide-button/kirbydesign-designsystem-slide-button.d.ts.map +1 -0
  663. package/slide-button/public_api.d.ts +1 -0
  664. package/slide-button/public_api.d.ts.map +1 -0
  665. package/slide-button/slide-button.component.d.ts +1 -0
  666. package/slide-button/slide-button.component.d.ts.map +1 -0
  667. package/spinner/index.d.ts +1 -0
  668. package/spinner/kirbydesign-designsystem-spinner.d.ts.map +1 -0
  669. package/spinner/public_api.d.ts +1 -0
  670. package/spinner/public_api.d.ts.map +1 -0
  671. package/spinner/spinner.component.d.ts +1 -0
  672. package/spinner/spinner.component.d.ts.map +1 -0
  673. package/spinner/spinner.module.d.ts +1 -0
  674. package/spinner/spinner.module.d.ts.map +1 -0
  675. package/tab-navigation/index.d.ts +1 -0
  676. package/tab-navigation/kirbydesign-designsystem-tab-navigation.d.ts.map +1 -0
  677. package/tab-navigation/public_api.d.ts +1 -0
  678. package/tab-navigation/public_api.d.ts.map +1 -0
  679. package/tab-navigation/tab-navigation/tab-navigation.component.d.ts +1 -0
  680. package/tab-navigation/tab-navigation/tab-navigation.component.d.ts.map +1 -0
  681. package/tab-navigation/tab-navigation-item/tab-navigation-item.component.d.ts +1 -0
  682. package/tab-navigation/tab-navigation-item/tab-navigation-item.component.d.ts.map +1 -0
  683. package/tab-navigation/tab-navigation.module.d.ts +1 -0
  684. package/tab-navigation/tab-navigation.module.d.ts.map +1 -0
  685. package/tabs/index.d.ts +1 -0
  686. package/tabs/kirbydesign-designsystem-tabs.d.ts.map +1 -0
  687. package/tabs/public_api.d.ts +1 -0
  688. package/tabs/public_api.d.ts.map +1 -0
  689. package/tabs/tab-button/tab-button.component.d.ts +1 -0
  690. package/tabs/tab-button/tab-button.component.d.ts.map +1 -0
  691. package/tabs/tab-button/tab-button.events.d.ts +1 -0
  692. package/tabs/tab-button/tab-button.events.d.ts.map +1 -0
  693. package/tabs/tabs.component.d.ts +1 -0
  694. package/tabs/tabs.component.d.ts.map +1 -0
  695. package/tabs/tabs.module.d.ts +1 -0
  696. package/tabs/tabs.module.d.ts.map +1 -0
  697. package/tabs/tabs.service.d.ts +1 -0
  698. package/tabs/tabs.service.d.ts.map +1 -0
  699. package/testing/element-css-custom-matchers.d.ts +1 -0
  700. package/testing/element-css-custom-matchers.d.ts.map +1 -0
  701. package/testing/index.d.ts +1 -0
  702. package/testing/kirbydesign-designsystem-testing.d.ts.map +1 -0
  703. package/testing/public_api.d.ts +1 -0
  704. package/testing/public_api.d.ts.map +1 -0
  705. package/testing/test-helper.d.ts +1 -0
  706. package/testing/test-helper.d.ts.map +1 -0
  707. package/testing-base/index.d.ts +1 -0
  708. package/testing-base/kirbydesign-designsystem-testing-base.d.ts.map +1 -0
  709. package/testing-base/lib/components/index.d.ts +1 -0
  710. package/testing-base/lib/components/index.d.ts.map +1 -0
  711. package/testing-base/lib/components/mock.accordion-item.component.d.ts +2 -1
  712. package/testing-base/lib/components/mock.accordion-item.component.d.ts.map +1 -0
  713. package/testing-base/lib/components/mock.action-group.component.d.ts +2 -1
  714. package/testing-base/lib/components/mock.action-group.component.d.ts.map +1 -0
  715. package/testing-base/lib/components/mock.action-sheet.component.d.ts +2 -1
  716. package/testing-base/lib/components/mock.action-sheet.component.d.ts.map +1 -0
  717. package/testing-base/lib/components/mock.alert.component.d.ts +2 -1
  718. package/testing-base/lib/components/mock.alert.component.d.ts.map +1 -0
  719. package/testing-base/lib/components/mock.avatar.component.d.ts +2 -1
  720. package/testing-base/lib/components/mock.avatar.component.d.ts.map +1 -0
  721. package/testing-base/lib/components/mock.badge.component.d.ts +2 -1
  722. package/testing-base/lib/components/mock.badge.component.d.ts.map +1 -0
  723. package/testing-base/lib/components/mock.base-chart.component.d.ts +2 -1
  724. package/testing-base/lib/components/mock.base-chart.component.d.ts.map +1 -0
  725. package/testing-base/lib/components/mock.button.component.d.ts +2 -1
  726. package/testing-base/lib/components/mock.button.component.d.ts.map +1 -0
  727. package/testing-base/lib/components/mock.calendar.component.d.ts +2 -1
  728. package/testing-base/lib/components/mock.calendar.component.d.ts.map +1 -0
  729. package/testing-base/lib/components/mock.card-footer.component.d.ts +2 -1
  730. package/testing-base/lib/components/mock.card-footer.component.d.ts.map +1 -0
  731. package/testing-base/lib/components/mock.card-header.component.d.ts +2 -1
  732. package/testing-base/lib/components/mock.card-header.component.d.ts.map +1 -0
  733. package/testing-base/lib/components/mock.card.component.d.ts +2 -1
  734. package/testing-base/lib/components/mock.card.component.d.ts.map +1 -0
  735. package/testing-base/lib/components/mock.chart.component.d.ts +2 -1
  736. package/testing-base/lib/components/mock.chart.component.d.ts.map +1 -0
  737. package/testing-base/lib/components/mock.checkbox.component.d.ts +2 -1
  738. package/testing-base/lib/components/mock.checkbox.component.d.ts.map +1 -0
  739. package/testing-base/lib/components/mock.divider.component.d.ts +2 -1
  740. package/testing-base/lib/components/mock.divider.component.d.ts.map +1 -0
  741. package/testing-base/lib/components/mock.dropdown.component.d.ts +2 -1
  742. package/testing-base/lib/components/mock.dropdown.component.d.ts.map +1 -0
  743. package/testing-base/lib/components/mock.empty-state.component.d.ts +2 -1
  744. package/testing-base/lib/components/mock.empty-state.component.d.ts.map +1 -0
  745. package/testing-base/lib/components/mock.fab-sheet.component.d.ts +2 -1
  746. package/testing-base/lib/components/mock.fab-sheet.component.d.ts.map +1 -0
  747. package/testing-base/lib/components/mock.flag.component.d.ts +2 -1
  748. package/testing-base/lib/components/mock.flag.component.d.ts.map +1 -0
  749. package/testing-base/lib/components/mock.form-field-message.component.d.ts +2 -1
  750. package/testing-base/lib/components/mock.form-field-message.component.d.ts.map +1 -0
  751. package/testing-base/lib/components/mock.form-field.component.d.ts +2 -1
  752. package/testing-base/lib/components/mock.form-field.component.d.ts.map +1 -0
  753. package/testing-base/lib/components/mock.header.component.d.ts +4 -3
  754. package/testing-base/lib/components/mock.header.component.d.ts.map +1 -0
  755. package/testing-base/lib/components/mock.icon.component.d.ts +2 -1
  756. package/testing-base/lib/components/mock.icon.component.d.ts.map +1 -0
  757. package/testing-base/lib/components/mock.input-counter.component.d.ts +2 -1
  758. package/testing-base/lib/components/mock.input-counter.component.d.ts.map +1 -0
  759. package/testing-base/lib/components/mock.input.component.d.ts +2 -1
  760. package/testing-base/lib/components/mock.input.component.d.ts.map +1 -0
  761. package/testing-base/lib/components/mock.item-group.component.d.ts +2 -1
  762. package/testing-base/lib/components/mock.item-group.component.d.ts.map +1 -0
  763. package/testing-base/lib/components/mock.item-sliding.component.d.ts +2 -1
  764. package/testing-base/lib/components/mock.item-sliding.component.d.ts.map +1 -0
  765. package/testing-base/lib/components/mock.item.component.d.ts +2 -1
  766. package/testing-base/lib/components/mock.item.component.d.ts.map +1 -0
  767. package/testing-base/lib/components/mock.kirby-app.component.d.ts +2 -1
  768. package/testing-base/lib/components/mock.kirby-app.component.d.ts.map +1 -0
  769. package/testing-base/lib/components/mock.label.component.d.ts +2 -1
  770. package/testing-base/lib/components/mock.label.component.d.ts.map +1 -0
  771. package/testing-base/lib/components/mock.list-experimental.component.d.ts +2 -1
  772. package/testing-base/lib/components/mock.list-experimental.component.d.ts.map +1 -0
  773. package/testing-base/lib/components/mock.list-header.component.d.ts +2 -1
  774. package/testing-base/lib/components/mock.list-header.component.d.ts.map +1 -0
  775. package/testing-base/lib/components/mock.list-item.component.d.ts +2 -1
  776. package/testing-base/lib/components/mock.list-item.component.d.ts.map +1 -0
  777. package/testing-base/lib/components/mock.list-section-header.component.d.ts +2 -1
  778. package/testing-base/lib/components/mock.list-section-header.component.d.ts.map +1 -0
  779. package/testing-base/lib/components/mock.list.component.d.ts +2 -1
  780. package/testing-base/lib/components/mock.list.component.d.ts.map +1 -0
  781. package/testing-base/lib/components/mock.loading-overlay.component.d.ts +2 -1
  782. package/testing-base/lib/components/mock.loading-overlay.component.d.ts.map +1 -0
  783. package/testing-base/lib/components/mock.menu.component.d.ts +2 -1
  784. package/testing-base/lib/components/mock.menu.component.d.ts.map +1 -0
  785. package/testing-base/lib/components/mock.modal-compact-wrapper.component.d.ts +2 -1
  786. package/testing-base/lib/components/mock.modal-compact-wrapper.component.d.ts.map +1 -0
  787. package/testing-base/lib/components/mock.modal-footer.component.d.ts +2 -1
  788. package/testing-base/lib/components/mock.modal-footer.component.d.ts.map +1 -0
  789. package/testing-base/lib/components/mock.modal-wrapper.component.d.ts +2 -1
  790. package/testing-base/lib/components/mock.modal-wrapper.component.d.ts.map +1 -0
  791. package/testing-base/lib/components/mock.page-footer.component.d.ts +2 -1
  792. package/testing-base/lib/components/mock.page-footer.component.d.ts.map +1 -0
  793. package/testing-base/lib/components/mock.page.component.d.ts +12 -11
  794. package/testing-base/lib/components/mock.page.component.d.ts.map +1 -0
  795. package/testing-base/lib/components/mock.popover.component.d.ts +2 -1
  796. package/testing-base/lib/components/mock.popover.component.d.ts.map +1 -0
  797. package/testing-base/lib/components/mock.progress-circle-ring.component.d.ts +2 -1
  798. package/testing-base/lib/components/mock.progress-circle-ring.component.d.ts.map +1 -0
  799. package/testing-base/lib/components/mock.progress-circle.component.d.ts +2 -1
  800. package/testing-base/lib/components/mock.progress-circle.component.d.ts.map +1 -0
  801. package/testing-base/lib/components/mock.radio-group.component.d.ts +2 -1
  802. package/testing-base/lib/components/mock.radio-group.component.d.ts.map +1 -0
  803. package/testing-base/lib/components/mock.radio.component.d.ts +2 -1
  804. package/testing-base/lib/components/mock.radio.component.d.ts.map +1 -0
  805. package/testing-base/lib/components/mock.range.component.d.ts +2 -1
  806. package/testing-base/lib/components/mock.range.component.d.ts.map +1 -0
  807. package/testing-base/lib/components/mock.reorder-list.component.d.ts +2 -1
  808. package/testing-base/lib/components/mock.reorder-list.component.d.ts.map +1 -0
  809. package/testing-base/lib/components/mock.router-outlet.component.d.ts +2 -1
  810. package/testing-base/lib/components/mock.router-outlet.component.d.ts.map +1 -0
  811. package/testing-base/lib/components/mock.section-header.component.d.ts +2 -1
  812. package/testing-base/lib/components/mock.section-header.component.d.ts.map +1 -0
  813. package/testing-base/lib/components/mock.segmented-control.component.d.ts +2 -1
  814. package/testing-base/lib/components/mock.segmented-control.component.d.ts.map +1 -0
  815. package/testing-base/lib/components/mock.slide-button.component.d.ts +2 -1
  816. package/testing-base/lib/components/mock.slide-button.component.d.ts.map +1 -0
  817. package/testing-base/lib/components/mock.slides.component.d.ts +2 -1
  818. package/testing-base/lib/components/mock.slides.component.d.ts.map +1 -0
  819. package/testing-base/lib/components/mock.spinner.component.d.ts +2 -1
  820. package/testing-base/lib/components/mock.spinner.component.d.ts.map +1 -0
  821. package/testing-base/lib/components/mock.stock-chart.component.d.ts +2 -1
  822. package/testing-base/lib/components/mock.stock-chart.component.d.ts.map +1 -0
  823. package/testing-base/lib/components/mock.tab-button.component.d.ts +2 -1
  824. package/testing-base/lib/components/mock.tab-button.component.d.ts.map +1 -0
  825. package/testing-base/lib/components/mock.tab-navigation-item.component.d.ts +2 -1
  826. package/testing-base/lib/components/mock.tab-navigation-item.component.d.ts.map +1 -0
  827. package/testing-base/lib/components/mock.tab-navigation.component.d.ts +2 -1
  828. package/testing-base/lib/components/mock.tab-navigation.component.d.ts.map +1 -0
  829. package/testing-base/lib/components/mock.tabs.component.d.ts +2 -1
  830. package/testing-base/lib/components/mock.tabs.component.d.ts.map +1 -0
  831. package/testing-base/lib/components/mock.textarea.component.d.ts +2 -1
  832. package/testing-base/lib/components/mock.textarea.component.d.ts.map +1 -0
  833. package/testing-base/lib/components/mock.toggle-button.component.d.ts +2 -1
  834. package/testing-base/lib/components/mock.toggle-button.component.d.ts.map +1 -0
  835. package/testing-base/lib/components/mock.toggle.component.d.ts +2 -1
  836. package/testing-base/lib/components/mock.toggle.component.d.ts.map +1 -0
  837. package/testing-base/lib/directives/index.d.ts +1 -0
  838. package/testing-base/lib/directives/index.d.ts.map +1 -0
  839. package/testing-base/lib/directives/mock.accordion.directive.d.ts +2 -1
  840. package/testing-base/lib/directives/mock.accordion.directive.d.ts.map +1 -0
  841. package/testing-base/lib/directives/mock.affix.directive.d.ts +2 -1
  842. package/testing-base/lib/directives/mock.affix.directive.d.ts.map +1 -0
  843. package/testing-base/lib/directives/mock.card-as-button.directive.d.ts +2 -1
  844. package/testing-base/lib/directives/mock.card-as-button.directive.d.ts.map +1 -0
  845. package/testing-base/lib/directives/mock.component-loader.directive.d.ts +2 -1
  846. package/testing-base/lib/directives/mock.component-loader.directive.d.ts.map +1 -0
  847. package/testing-base/lib/directives/mock.date-input.directive.d.ts +2 -1
  848. package/testing-base/lib/directives/mock.date-input.directive.d.ts.map +1 -0
  849. package/testing-base/lib/directives/mock.decimal-mask.directive.d.ts +2 -1
  850. package/testing-base/lib/directives/mock.decimal-mask.directive.d.ts.map +1 -0
  851. package/testing-base/lib/directives/mock.fit-heading.directive.d.ts +2 -1
  852. package/testing-base/lib/directives/mock.fit-heading.directive.d.ts.map +1 -0
  853. package/testing-base/lib/directives/mock.floating.directive.d.ts +2 -1
  854. package/testing-base/lib/directives/mock.floating.directive.d.ts.map +1 -0
  855. package/testing-base/lib/directives/mock.infinite-scroll.directive.d.ts +2 -1
  856. package/testing-base/lib/directives/mock.infinite-scroll.directive.d.ts.map +1 -0
  857. package/testing-base/lib/directives/mock.key-handler.directive.d.ts +2 -1
  858. package/testing-base/lib/directives/mock.key-handler.directive.d.ts.map +1 -0
  859. package/testing-base/lib/directives/mock.list-item-color.directive.d.ts +2 -1
  860. package/testing-base/lib/directives/mock.list-item-color.directive.d.ts.map +1 -0
  861. package/testing-base/lib/directives/mock.list.directive.d.ts +5 -4
  862. package/testing-base/lib/directives/mock.list.directive.d.ts.map +1 -0
  863. package/testing-base/lib/directives/mock.modal-router-link.directive.d.ts +2 -1
  864. package/testing-base/lib/directives/mock.modal-router-link.directive.d.ts.map +1 -0
  865. package/testing-base/lib/directives/mock.portal.directive.d.ts +2 -1
  866. package/testing-base/lib/directives/mock.portal.directive.d.ts.map +1 -0
  867. package/testing-base/lib/directives/mock.slide.directive.d.ts +2 -1
  868. package/testing-base/lib/directives/mock.slide.directive.d.ts.map +1 -0
  869. package/testing-base/lib/directives/mock.theme-color.directive.d.ts +2 -1
  870. package/testing-base/lib/directives/mock.theme-color.directive.d.ts.map +1 -0
  871. package/testing-base/lib/index.d.ts +1 -0
  872. package/testing-base/lib/index.d.ts.map +1 -0
  873. package/testing-base/lib/kirby-testing-base.module.d.ts +2 -1
  874. package/testing-base/lib/kirby-testing-base.module.d.ts.map +1 -0
  875. package/testing-base/lib/mock-components.d.ts +1 -0
  876. package/testing-base/lib/mock-components.d.ts.map +1 -0
  877. package/testing-base/lib/mock-directives.d.ts +1 -0
  878. package/testing-base/lib/mock-directives.d.ts.map +1 -0
  879. package/testing-base/public_api.d.ts +1 -0
  880. package/testing-base/public_api.d.ts.map +1 -0
  881. package/testing-jasmine/index.d.ts +1 -0
  882. package/testing-jasmine/kirbydesign-designsystem-testing-jasmine.d.ts.map +1 -0
  883. package/testing-jasmine/lib/kirby-testing.module.d.ts +1 -0
  884. package/testing-jasmine/lib/kirby-testing.module.d.ts.map +1 -0
  885. package/testing-jasmine/lib/mock-providers.d.ts +1 -0
  886. package/testing-jasmine/lib/mock-providers.d.ts.map +1 -0
  887. package/testing-jasmine/public_api.d.ts +1 -0
  888. package/testing-jasmine/public_api.d.ts.map +1 -0
  889. package/testing-jest/index.d.ts +1 -0
  890. package/testing-jest/kirbydesign-designsystem-testing-jest.d.ts.map +1 -0
  891. package/testing-jest/lib/kirby-testing.module.d.ts +1 -0
  892. package/testing-jest/lib/kirby-testing.module.d.ts.map +1 -0
  893. package/testing-jest/lib/mock-providers.d.ts +1 -0
  894. package/testing-jest/lib/mock-providers.d.ts.map +1 -0
  895. package/testing-jest/public_api.d.ts +1 -0
  896. package/testing-jest/public_api.d.ts.map +1 -0
  897. package/toast/config/toast-config.d.ts +1 -0
  898. package/toast/config/toast-config.d.ts.map +1 -0
  899. package/toast/index.d.ts +1 -0
  900. package/toast/kirbydesign-designsystem-toast.d.ts.map +1 -0
  901. package/toast/public_api.d.ts +1 -0
  902. package/toast/public_api.d.ts.map +1 -0
  903. package/toast/services/indexs.d.ts +1 -0
  904. package/toast/services/indexs.d.ts.map +1 -0
  905. package/toast/services/toast.controller.d.ts +1 -0
  906. package/toast/services/toast.controller.d.ts.map +1 -0
  907. package/toast/services/toast.helper.d.ts +1 -0
  908. package/toast/services/toast.helper.d.ts.map +1 -0
  909. package/toggle/index.d.ts +1 -0
  910. package/toggle/kirbydesign-designsystem-toggle.d.ts.map +1 -0
  911. package/toggle/public_api.d.ts +1 -0
  912. package/toggle/public_api.d.ts.map +1 -0
  913. package/toggle/toggle.component.d.ts +1 -0
  914. package/toggle/toggle.component.d.ts.map +1 -0
  915. package/toggle-button/index.d.ts +1 -0
  916. package/toggle-button/kirbydesign-designsystem-toggle-button.d.ts.map +1 -0
  917. package/toggle-button/public_api.d.ts +1 -0
  918. package/toggle-button/public_api.d.ts.map +1 -0
  919. package/toggle-button/toggle-button.component.d.ts +6 -1
  920. package/toggle-button/toggle-button.component.d.ts.map +1 -0
  921. package/toggle-button/toggle-button.module.d.ts +1 -0
  922. package/toggle-button/toggle-button.module.d.ts.map +1 -0
  923. package/types/event-listener-dispose-fn.d.ts +1 -0
  924. package/types/event-listener-dispose-fn.d.ts.map +1 -0
  925. package/types/index.d.ts +1 -0
  926. package/types/kirbydesign-designsystem-types.d.ts.map +1 -0
  927. package/types/public_api.d.ts +1 -0
  928. package/types/public_api.d.ts.map +1 -0
  929. package/types/unobserve-fn.d.ts +1 -0
  930. package/types/unobserve-fn.d.ts.map +1 -0
  931. package/types/window-ref.d.ts +1 -0
  932. package/types/window-ref.d.ts.map +1 -0
  933. package/esm2022/accordion/accordion-item.component.mjs +0 -85
  934. package/esm2022/accordion/accordion.directive.mjs +0 -14
  935. package/esm2022/accordion/accordion.module.mjs +0 -20
  936. package/esm2022/accordion/kirbydesign-designsystem-accordion.mjs +0 -5
  937. package/esm2022/accordion/public_api.mjs +0 -4
  938. package/esm2022/action-group/action-group.component.mjs +0 -131
  939. package/esm2022/action-group/kirbydesign-designsystem-action-group.mjs +0 -5
  940. package/esm2022/action-group/public_api.mjs +0 -2
  941. package/esm2022/avatar/avatar.component.mjs +0 -51
  942. package/esm2022/avatar/kirbydesign-designsystem-avatar.mjs +0 -5
  943. package/esm2022/avatar/public_api.mjs +0 -2
  944. package/esm2022/badge/badge.component.mjs +0 -38
  945. package/esm2022/badge/kirbydesign-designsystem-badge.mjs +0 -5
  946. package/esm2022/badge/public_api.mjs +0 -2
  947. package/esm2022/button/button.component.mjs +0 -158
  948. package/esm2022/button/kirbydesign-designsystem-button.mjs +0 -5
  949. package/esm2022/button/public_api.mjs +0 -2
  950. package/esm2022/calendar/calendar.component.mjs +0 -514
  951. package/esm2022/calendar/interfaces/calendar-day.mjs +0 -2
  952. package/esm2022/calendar/interfaces/calendar-year-navigator-config.mjs +0 -2
  953. package/esm2022/calendar/kirbydesign-designsystem-calendar.mjs +0 -5
  954. package/esm2022/calendar/public_api.mjs +0 -2
  955. package/esm2022/card/card-as-button/card-as-button.directive.mjs +0 -64
  956. package/esm2022/card/card-flag-level.mjs +0 -2
  957. package/esm2022/card/card-footer/card-footer.component.mjs +0 -19
  958. package/esm2022/card/card-header/card-header.component.mjs +0 -35
  959. package/esm2022/card/card.component.mjs +0 -78
  960. package/esm2022/card/card.module.mjs +0 -34
  961. package/esm2022/card/kirbydesign-designsystem-card.mjs +0 -5
  962. package/esm2022/card/public_api.mjs +0 -7
  963. package/esm2022/chart/chart/chart.component.mjs +0 -18
  964. package/esm2022/chart/chart/index.mjs +0 -2
  965. package/esm2022/chart/chart-config/chart-bar-config/chart-bar-config.mjs +0 -43
  966. package/esm2022/chart/chart-config/chart-base-config.mjs +0 -4
  967. package/esm2022/chart/chart-config/chart-stock-config/chart-stock-config.mjs +0 -153
  968. package/esm2022/chart/chart-config/chart-stock-config/data-label-position/data-label-position.mjs +0 -48
  969. package/esm2022/chart/chart-config/chart-stock-config/vertical-line-plugin/vertical-line-plugin.mjs +0 -37
  970. package/esm2022/chart/chart-config/chart-stock-config/vertical-line-plugin/vertical-line-plugin.model.mjs +0 -2
  971. package/esm2022/chart/charts.module.mjs +0 -19
  972. package/esm2022/chart/kirbydesign-designsystem-chart.mjs +0 -5
  973. package/esm2022/chart/public_api.mjs +0 -7
  974. package/esm2022/chart/shared/base-chart/base-chart.component.mjs +0 -124
  975. package/esm2022/chart/shared/base-chart/index.mjs +0 -2
  976. package/esm2022/chart/shared/chart-config-service/chart-config.service.mjs +0 -75
  977. package/esm2022/chart/shared/chart-config-service/configs/annotations.config.mjs +0 -32
  978. package/esm2022/chart/shared/chart-config-service/configs/global-defaults.config.mjs +0 -65
  979. package/esm2022/chart/shared/chart-config-service/configs/interaction-functions-extensions.config.mjs +0 -13
  980. package/esm2022/chart/shared/chart-config-service/configs/type.config.mjs +0 -207
  981. package/esm2022/chart/shared/chart-config-service/index.mjs +0 -2
  982. package/esm2022/chart/shared/chart-js-service/annotations.delegate.mjs +0 -35
  983. package/esm2022/chart/shared/chart-js-service/chart-js.service.mjs +0 -179
  984. package/esm2022/chart/shared/chart-js-service/chartjs-plugin-marker/chartjs-plugin-marker.mjs +0 -194
  985. package/esm2022/chart/shared/chart-js-service/configured-chart-js.mjs +0 -22
  986. package/esm2022/chart/shared/chart-js-service/index.mjs +0 -3
  987. package/esm2022/chart/shared/chart-js-service/test-utils.mjs +0 -167
  988. package/esm2022/chart/shared/charts.types.mjs +0 -4
  989. package/esm2022/chart/shared/index.mjs +0 -5
  990. package/esm2022/chart/stock-chart/index.mjs +0 -2
  991. package/esm2022/chart/stock-chart/stock-chart-js.service.mjs +0 -100
  992. package/esm2022/chart/stock-chart/stock-chart.component.mjs +0 -22
  993. package/esm2022/checkbox/checkbox.component.mjs +0 -166
  994. package/esm2022/checkbox/kirbydesign-designsystem-checkbox.mjs +0 -5
  995. package/esm2022/checkbox/public_api.mjs +0 -2
  996. package/esm2022/data-table/data-table.module.mjs +0 -24
  997. package/esm2022/data-table/kirbydesign-designsystem-data-table.mjs +0 -5
  998. package/esm2022/data-table/public_api.mjs +0 -3
  999. package/esm2022/data-table/sortable/sortable.component.mjs +0 -58
  1000. package/esm2022/divider/divider.component.mjs +0 -14
  1001. package/esm2022/divider/kirbydesign-designsystem-divider.mjs +0 -5
  1002. package/esm2022/divider/public_api.mjs +0 -2
  1003. package/esm2022/dropdown/dropdown.component.mjs +0 -611
  1004. package/esm2022/dropdown/dropdown.module.mjs +0 -47
  1005. package/esm2022/dropdown/dropdown.types.mjs +0 -12
  1006. package/esm2022/dropdown/keyboard-handler.service.mjs +0 -50
  1007. package/esm2022/dropdown/kirbydesign-designsystem-dropdown.mjs +0 -5
  1008. package/esm2022/dropdown/public_api.mjs +0 -6
  1009. package/esm2022/empty-state/empty-state.component.mjs +0 -69
  1010. package/esm2022/empty-state/empty-state.module.mjs +0 -21
  1011. package/esm2022/empty-state/kirbydesign-designsystem-empty-state.mjs +0 -5
  1012. package/esm2022/empty-state/public_api.mjs +0 -3
  1013. package/esm2022/fab-sheet/fab-sheet.component.mjs +0 -78
  1014. package/esm2022/fab-sheet/kirbydesign-designsystem-fab-sheet.mjs +0 -5
  1015. package/esm2022/fab-sheet/public_api.mjs +0 -2
  1016. package/esm2022/flag/flag.component.mjs +0 -30
  1017. package/esm2022/flag/kirbydesign-designsystem-flag.mjs +0 -5
  1018. package/esm2022/flag/public_api.mjs +0 -2
  1019. package/esm2022/form-field/directives/affix/affix.directive.mjs +0 -21
  1020. package/esm2022/form-field/directives/date/date-input.directive.mjs +0 -129
  1021. package/esm2022/form-field/directives/decimal-mask/decimal-mask.directive.mjs +0 -131
  1022. package/esm2022/form-field/form-field-message/form-field-message.component.mjs +0 -18
  1023. package/esm2022/form-field/form-field.component.mjs +0 -156
  1024. package/esm2022/form-field/form-field.module.mjs +0 -24
  1025. package/esm2022/form-field/input/input.component.mjs +0 -116
  1026. package/esm2022/form-field/input-counter/input-counter.component.mjs +0 -35
  1027. package/esm2022/form-field/kirbydesign-designsystem-form-field.mjs +0 -5
  1028. package/esm2022/form-field/public_api.mjs +0 -10
  1029. package/esm2022/form-field/textarea/textarea.component.mjs +0 -66
  1030. package/esm2022/header/header.component.mjs +0 -158
  1031. package/esm2022/header/header.module.mjs +0 -34
  1032. package/esm2022/header/kirbydesign-designsystem-header.mjs +0 -5
  1033. package/esm2022/header/public_api.mjs +0 -3
  1034. package/esm2022/helpers/chart-config-has-type.mjs +0 -10
  1035. package/esm2022/helpers/color-helper.mjs +0 -2
  1036. package/esm2022/helpers/content-mutation-observer.mjs +0 -50
  1037. package/esm2022/helpers/deep-copy.mjs +0 -52
  1038. package/esm2022/helpers/design-token-helper.mjs +0 -2
  1039. package/esm2022/helpers/element-ancestor-utils.mjs +0 -33
  1040. package/esm2022/helpers/ionic-element-part-helper.mjs +0 -25
  1041. package/esm2022/helpers/kirby-animation.mjs +0 -15
  1042. package/esm2022/helpers/kirbydesign-designsystem-helpers.mjs +0 -5
  1043. package/esm2022/helpers/line-clamp-helper.mjs +0 -31
  1044. package/esm2022/helpers/merge-deep.mjs +0 -38
  1045. package/esm2022/helpers/platform.service.mjs +0 -27
  1046. package/esm2022/helpers/public_api.mjs +0 -17
  1047. package/esm2022/helpers/scss/kirbydesign-designsystem-helpers-scss.mjs +0 -5
  1048. package/esm2022/helpers/scss/public_api.mjs +0 -2
  1049. package/esm2022/helpers/scss/scss-helper.mjs +0 -9
  1050. package/esm2022/helpers/string-helper.mjs +0 -2
  1051. package/esm2022/helpers/theme-color.type.mjs +0 -2
  1052. package/esm2022/helpers/unique-id-generator.helper.mjs +0 -19
  1053. package/esm2022/icon/icon-registry.service.mjs +0 -61
  1054. package/esm2022/icon/icon-settings.mjs +0 -2
  1055. package/esm2022/icon/icon.component.mjs +0 -62
  1056. package/esm2022/icon/icon.module.mjs +0 -19
  1057. package/esm2022/icon/kirby-icon-settings.mjs +0 -130
  1058. package/esm2022/icon/kirbydesign-designsystem-icon.mjs +0 -5
  1059. package/esm2022/icon/public_api.mjs +0 -6
  1060. package/esm2022/item/item.component.mjs +0 -74
  1061. package/esm2022/item/item.module.mjs +0 -22
  1062. package/esm2022/item/kirbydesign-designsystem-item.mjs +0 -5
  1063. package/esm2022/item/label/label.component.mjs +0 -23
  1064. package/esm2022/item/public_api.mjs +0 -4
  1065. package/esm2022/item-group/item-group.component.mjs +0 -18
  1066. package/esm2022/item-group/kirbydesign-designsystem-item-group.mjs +0 -5
  1067. package/esm2022/item-group/public_api.mjs +0 -2
  1068. package/esm2022/item-sliding/item-sliding.component.mjs +0 -38
  1069. package/esm2022/item-sliding/item-sliding.types.mjs +0 -2
  1070. package/esm2022/item-sliding/kirbydesign-designsystem-item-sliding.mjs +0 -5
  1071. package/esm2022/item-sliding/public_api.mjs +0 -3
  1072. package/esm2022/kirby-app/kirby-app.component.mjs +0 -35
  1073. package/esm2022/kirby-app/kirby-app.module.mjs +0 -19
  1074. package/esm2022/kirby-app/kirbydesign-designsystem-kirby-app.mjs +0 -5
  1075. package/esm2022/kirby-app/public_api.mjs +0 -3
  1076. package/esm2022/kirby-ionic-module/kirby-ionic.module.mjs +0 -23
  1077. package/esm2022/kirby-ionic-module/kirbydesign-designsystem-kirby-ionic-module.mjs +0 -5
  1078. package/esm2022/kirby-ionic-module/public_api.mjs +0 -2
  1079. package/esm2022/kirbydesign-designsystem.mjs +0 -5
  1080. package/esm2022/lib/components/index.mjs +0 -3
  1081. package/esm2022/lib/components/segmented-control/segment-item.mjs +0 -2
  1082. package/esm2022/lib/components/segmented-control/segmented-control.component.mjs +0 -166
  1083. package/esm2022/lib/directives/index.mjs +0 -3
  1084. package/esm2022/lib/directives/key-handler/key-handler.directive.mjs +0 -28
  1085. package/esm2022/lib/directives/modal-router-link/modal-router-link.directive.mjs +0 -35
  1086. package/esm2022/lib/index.mjs +0 -49
  1087. package/esm2022/lib/kirby.module.mjs +0 -339
  1088. package/esm2022/list/directives/index.mjs +0 -4
  1089. package/esm2022/list/directives/infinite-scroll.directive.mjs +0 -114
  1090. package/esm2022/list/directives/list-item-color.directive.mjs +0 -30
  1091. package/esm2022/list/directives/scroll.model.mjs +0 -2
  1092. package/esm2022/list/helpers/index.mjs +0 -2
  1093. package/esm2022/list/helpers/list-helper.mjs +0 -83
  1094. package/esm2022/list/kirbydesign-designsystem-list.mjs +0 -5
  1095. package/esm2022/list/list-experimental/index.mjs +0 -2
  1096. package/esm2022/list/list-experimental/list-experimental.component.mjs +0 -24
  1097. package/esm2022/list/list-header/index.mjs +0 -2
  1098. package/esm2022/list/list-header/list-header.component.mjs +0 -12
  1099. package/esm2022/list/list-item/index.mjs +0 -2
  1100. package/esm2022/list/list-item/list-item.component.mjs +0 -129
  1101. package/esm2022/list/list-section-header/index.mjs +0 -2
  1102. package/esm2022/list/list-section-header/list-section-header.component.mjs +0 -13
  1103. package/esm2022/list/list-swipe-action.mjs +0 -2
  1104. package/esm2022/list/list-swipe-action.type.mjs +0 -2
  1105. package/esm2022/list/list.component.mjs +0 -187
  1106. package/esm2022/list/list.directive.mjs +0 -43
  1107. package/esm2022/list/list.event.mjs +0 -2
  1108. package/esm2022/list/list.module.mjs +0 -93
  1109. package/esm2022/list/public_api.mjs +0 -12
  1110. package/esm2022/loading-overlay/kirbydesign-designsystem-loading-overlay.mjs +0 -5
  1111. package/esm2022/loading-overlay/loading-overlay.component.mjs +0 -26
  1112. package/esm2022/loading-overlay/loading-overlay.service.mjs +0 -49
  1113. package/esm2022/loading-overlay/public_api.mjs +0 -3
  1114. package/esm2022/menu/kirbydesign-designsystem-menu.mjs +0 -5
  1115. package/esm2022/menu/menu.component.mjs +0 -294
  1116. package/esm2022/menu/public_api.mjs +0 -2
  1117. package/esm2022/modal/kirbydesign-designsystem-modal.mjs +0 -5
  1118. package/esm2022/modal/modal/action-sheet/action-sheet.component.mjs +0 -45
  1119. package/esm2022/modal/modal/action-sheet/config/action-sheet-config.mjs +0 -2
  1120. package/esm2022/modal/modal/action-sheet/config/action-sheet-item.mjs +0 -2
  1121. package/esm2022/modal/modal/action-sheet/index.mjs +0 -4
  1122. package/esm2022/modal/modal/alert/alert.component.mjs +0 -76
  1123. package/esm2022/modal/modal/alert/config/alert-config.mjs +0 -2
  1124. package/esm2022/modal/modal/alert/index.mjs +0 -3
  1125. package/esm2022/modal/modal/footer/modal-footer.component.mjs +0 -38
  1126. package/esm2022/modal/modal/index.mjs +0 -7
  1127. package/esm2022/modal/modal/modal-component/modal.component.mjs +0 -152
  1128. package/esm2022/modal/modal/services/action-sheet.helper.mjs +0 -46
  1129. package/esm2022/modal/modal/services/alert.helper.mjs +0 -56
  1130. package/esm2022/modal/modal/services/can-dismiss-modal-guard.mjs +0 -31
  1131. package/esm2022/modal/modal/services/can-dismiss.helper.mjs +0 -29
  1132. package/esm2022/modal/modal/services/index.mjs +0 -7
  1133. package/esm2022/modal/modal/services/modal-animation-builder.service.mjs +0 -268
  1134. package/esm2022/modal/modal/services/modal.controller.mjs +0 -121
  1135. package/esm2022/modal/modal/services/modal.helper.mjs +0 -118
  1136. package/esm2022/modal/modal-navigation.service.mjs +0 -265
  1137. package/esm2022/modal/modal-wrapper/compact/index.mjs +0 -2
  1138. package/esm2022/modal/modal-wrapper/compact/modal-compact-wrapper.component.mjs +0 -89
  1139. package/esm2022/modal/modal-wrapper/config/drawer-supplementary-action.mjs +0 -3
  1140. package/esm2022/modal/modal-wrapper/config/index.mjs +0 -4
  1141. package/esm2022/modal/modal-wrapper/config/modal-config.helper.mjs +0 -3
  1142. package/esm2022/modal/modal-wrapper/config/modal-config.mjs +0 -2
  1143. package/esm2022/modal/modal-wrapper/index.mjs +0 -4
  1144. package/esm2022/modal/modal-wrapper/modal-elements-mover.delegate.mjs +0 -62
  1145. package/esm2022/modal/modal-wrapper/modal-wrapper.component.mjs +0 -543
  1146. package/esm2022/modal/modal.interfaces.mjs +0 -50
  1147. package/esm2022/modal/public_api.mjs +0 -5
  1148. package/esm2022/page/kirbydesign-designsystem-page.mjs +0 -5
  1149. package/esm2022/page/page-footer/page-footer.component.mjs +0 -35
  1150. package/esm2022/page/page.component.mjs +0 -734
  1151. package/esm2022/page/page.module.mjs +0 -107
  1152. package/esm2022/page/public_api.mjs +0 -4
  1153. package/esm2022/popover/kirbydesign-designsystem-popover.mjs +0 -5
  1154. package/esm2022/popover/popover.component.mjs +0 -159
  1155. package/esm2022/popover/public_api.mjs +0 -2
  1156. package/esm2022/progress-circle/kirbydesign-designsystem-progress-circle.mjs +0 -5
  1157. package/esm2022/progress-circle/progress-circle-ring.component.mjs +0 -62
  1158. package/esm2022/progress-circle/progress-circle.component.mjs +0 -88
  1159. package/esm2022/progress-circle/public_api.mjs +0 -3
  1160. package/esm2022/public-api.mjs +0 -2
  1161. package/esm2022/radio/kirbydesign-designsystem-radio.mjs +0 -5
  1162. package/esm2022/radio/public_api.mjs +0 -4
  1163. package/esm2022/radio/radio-group/radio-group.component.mjs +0 -252
  1164. package/esm2022/radio/radio-module.mjs +0 -21
  1165. package/esm2022/radio/radio.component.mjs +0 -80
  1166. package/esm2022/range/kirbydesign-designsystem-range.mjs +0 -5
  1167. package/esm2022/range/public_api.mjs +0 -2
  1168. package/esm2022/range/range.component.mjs +0 -136
  1169. package/esm2022/reorder-list/kirbydesign-designsystem-reorder-list.mjs +0 -5
  1170. package/esm2022/reorder-list/public_api.mjs +0 -3
  1171. package/esm2022/reorder-list/reorder-event.mjs +0 -14
  1172. package/esm2022/reorder-list/reorder-list.component.mjs +0 -80
  1173. package/esm2022/router-outlet/kirbydesign-designsystem-router-outlet.mjs +0 -5
  1174. package/esm2022/router-outlet/public_api.mjs +0 -6
  1175. package/esm2022/router-outlet/router-outlet.component.mjs +0 -19
  1176. package/esm2022/router-outlet/router-outlet.module.mjs +0 -19
  1177. package/esm2022/section-header/kirbydesign-designsystem-section-header.mjs +0 -5
  1178. package/esm2022/section-header/public_api.mjs +0 -2
  1179. package/esm2022/section-header/section-header.component.mjs +0 -13
  1180. package/esm2022/shared/component-configuration.mjs +0 -2
  1181. package/esm2022/shared/component-loader.directive.mjs +0 -36
  1182. package/esm2022/shared/controls/label-helpers.mjs +0 -23
  1183. package/esm2022/shared/dynamic-component.mjs +0 -2
  1184. package/esm2022/shared/fit-heading/fit-heading.directive.mjs +0 -107
  1185. package/esm2022/shared/fit-heading/index.mjs +0 -2
  1186. package/esm2022/shared/floating/floating.directive.mjs +0 -385
  1187. package/esm2022/shared/floating/kirbydesign-designsystem-shared-floating.mjs +0 -5
  1188. package/esm2022/shared/floating/public_api.mjs +0 -2
  1189. package/esm2022/shared/kirbydesign-designsystem-shared.mjs +0 -5
  1190. package/esm2022/shared/portal/kirbydesign-designsystem-shared-portal.mjs +0 -5
  1191. package/esm2022/shared/portal/portal.directive.mjs +0 -78
  1192. package/esm2022/shared/portal/public_api.mjs +0 -2
  1193. package/esm2022/shared/public_api.mjs +0 -10
  1194. package/esm2022/shared/resize-observer/resize-observer.factory.mjs +0 -18
  1195. package/esm2022/shared/resize-observer/resize-observer.service.mjs +0 -50
  1196. package/esm2022/shared/theme-color/theme-color.directive.mjs +0 -127
  1197. package/esm2022/shared/translation/translation.interface.mjs +0 -2
  1198. package/esm2022/shared/translation/translation.service.mjs +0 -37
  1199. package/esm2022/shared/translation/translations/da.mjs +0 -11
  1200. package/esm2022/shared/translation/translations/en.mjs +0 -11
  1201. package/esm2022/slide/kirbydesign-designsystem-slide.mjs +0 -5
  1202. package/esm2022/slide/public_api.mjs +0 -5
  1203. package/esm2022/slide/slide-stretch-height.directive.mjs +0 -19
  1204. package/esm2022/slide/slide.directive.mjs +0 -13
  1205. package/esm2022/slide/slide.module.mjs +0 -24
  1206. package/esm2022/slide/slides.component.mjs +0 -113
  1207. package/esm2022/slide-button/kirbydesign-designsystem-slide-button.mjs +0 -5
  1208. package/esm2022/slide-button/public_api.mjs +0 -2
  1209. package/esm2022/slide-button/slide-button.component.mjs +0 -138
  1210. package/esm2022/spinner/kirbydesign-designsystem-spinner.mjs +0 -5
  1211. package/esm2022/spinner/public_api.mjs +0 -3
  1212. package/esm2022/spinner/spinner.component.mjs +0 -11
  1213. package/esm2022/spinner/spinner.module.mjs +0 -19
  1214. package/esm2022/tab-navigation/kirbydesign-designsystem-tab-navigation.mjs +0 -5
  1215. package/esm2022/tab-navigation/public_api.mjs +0 -4
  1216. package/esm2022/tab-navigation/tab-navigation/tab-navigation.component.mjs +0 -136
  1217. package/esm2022/tab-navigation/tab-navigation-item/tab-navigation-item.component.mjs +0 -20
  1218. package/esm2022/tab-navigation/tab-navigation.module.mjs +0 -19
  1219. package/esm2022/tabs/kirbydesign-designsystem-tabs.mjs +0 -5
  1220. package/esm2022/tabs/public_api.mjs +0 -6
  1221. package/esm2022/tabs/tab-button/tab-button.component.mjs +0 -32
  1222. package/esm2022/tabs/tab-button/tab-button.events.mjs +0 -2
  1223. package/esm2022/tabs/tabs.component.mjs +0 -31
  1224. package/esm2022/tabs/tabs.module.mjs +0 -23
  1225. package/esm2022/tabs/tabs.service.mjs +0 -26
  1226. package/esm2022/testing/element-css-custom-matchers.mjs +0 -94
  1227. package/esm2022/testing/kirbydesign-designsystem-testing.mjs +0 -5
  1228. package/esm2022/testing/public_api.mjs +0 -3
  1229. package/esm2022/testing/test-helper.mjs +0 -155
  1230. package/esm2022/testing-base/kirbydesign-designsystem-testing-base.mjs +0 -5
  1231. package/esm2022/testing-base/lib/components/index.mjs +0 -65
  1232. package/esm2022/testing-base/lib/components/mock.accordion-item.component.mjs +0 -37
  1233. package/esm2022/testing-base/lib/components/mock.action-group.component.mjs +0 -35
  1234. package/esm2022/testing-base/lib/components/mock.action-sheet.component.mjs +0 -49
  1235. package/esm2022/testing-base/lib/components/mock.alert.component.mjs +0 -43
  1236. package/esm2022/testing-base/lib/components/mock.avatar.component.mjs +0 -45
  1237. package/esm2022/testing-base/lib/components/mock.badge.component.mjs +0 -33
  1238. package/esm2022/testing-base/lib/components/mock.base-chart.component.mjs +0 -43
  1239. package/esm2022/testing-base/lib/components/mock.button.component.mjs +0 -44
  1240. package/esm2022/testing-base/lib/components/mock.calendar.component.mjs +0 -76
  1241. package/esm2022/testing-base/lib/components/mock.card-footer.component.mjs +0 -31
  1242. package/esm2022/testing-base/lib/components/mock.card-header.component.mjs +0 -39
  1243. package/esm2022/testing-base/lib/components/mock.card.component.mjs +0 -41
  1244. package/esm2022/testing-base/lib/components/mock.chart.component.mjs +0 -34
  1245. package/esm2022/testing-base/lib/components/mock.checkbox.component.mjs +0 -46
  1246. package/esm2022/testing-base/lib/components/mock.divider.component.mjs +0 -31
  1247. package/esm2022/testing-base/lib/components/mock.dropdown.component.mjs +0 -60
  1248. package/esm2022/testing-base/lib/components/mock.empty-state.component.mjs +0 -35
  1249. package/esm2022/testing-base/lib/components/mock.fab-sheet.component.mjs +0 -33
  1250. package/esm2022/testing-base/lib/components/mock.flag.component.mjs +0 -33
  1251. package/esm2022/testing-base/lib/components/mock.form-field-message.component.mjs +0 -33
  1252. package/esm2022/testing-base/lib/components/mock.form-field.component.mjs +0 -36
  1253. package/esm2022/testing-base/lib/components/mock.header.component.mjs +0 -87
  1254. package/esm2022/testing-base/lib/components/mock.icon.component.mjs +0 -33
  1255. package/esm2022/testing-base/lib/components/mock.input-counter.component.mjs +0 -31
  1256. package/esm2022/testing-base/lib/components/mock.input.component.mjs +0 -48
  1257. package/esm2022/testing-base/lib/components/mock.item-group.component.mjs +0 -29
  1258. package/esm2022/testing-base/lib/components/mock.item-sliding.component.mjs +0 -33
  1259. package/esm2022/testing-base/lib/components/mock.item.component.mjs +0 -41
  1260. package/esm2022/testing-base/lib/components/mock.kirby-app.component.mjs +0 -29
  1261. package/esm2022/testing-base/lib/components/mock.label.component.mjs +0 -31
  1262. package/esm2022/testing-base/lib/components/mock.list-experimental.component.mjs +0 -29
  1263. package/esm2022/testing-base/lib/components/mock.list-header.component.mjs +0 -29
  1264. package/esm2022/testing-base/lib/components/mock.list-item.component.mjs +0 -51
  1265. package/esm2022/testing-base/lib/components/mock.list-section-header.component.mjs +0 -31
  1266. package/esm2022/testing-base/lib/components/mock.list.component.mjs +0 -65
  1267. package/esm2022/testing-base/lib/components/mock.loading-overlay.component.mjs +0 -35
  1268. package/esm2022/testing-base/lib/components/mock.menu.component.mjs +0 -54
  1269. package/esm2022/testing-base/lib/components/mock.modal-compact-wrapper.component.mjs +0 -31
  1270. package/esm2022/testing-base/lib/components/mock.modal-footer.component.mjs +0 -33
  1271. package/esm2022/testing-base/lib/components/mock.modal-wrapper.component.mjs +0 -37
  1272. package/esm2022/testing-base/lib/components/mock.page-footer.component.mjs +0 -31
  1273. package/esm2022/testing-base/lib/components/mock.page.component.mjs +0 -289
  1274. package/esm2022/testing-base/lib/components/mock.popover.component.mjs +0 -38
  1275. package/esm2022/testing-base/lib/components/mock.progress-circle-ring.component.mjs +0 -39
  1276. package/esm2022/testing-base/lib/components/mock.progress-circle.component.mjs +0 -35
  1277. package/esm2022/testing-base/lib/components/mock.radio-group.component.mjs +0 -48
  1278. package/esm2022/testing-base/lib/components/mock.radio.component.mjs +0 -37
  1279. package/esm2022/testing-base/lib/components/mock.range.component.mjs +0 -66
  1280. package/esm2022/testing-base/lib/components/mock.reorder-list.component.mjs +0 -43
  1281. package/esm2022/testing-base/lib/components/mock.router-outlet.component.mjs +0 -31
  1282. package/esm2022/testing-base/lib/components/mock.section-header.component.mjs +0 -29
  1283. package/esm2022/testing-base/lib/components/mock.segmented-control.component.mjs +0 -49
  1284. package/esm2022/testing-base/lib/components/mock.slide-button.component.mjs +0 -41
  1285. package/esm2022/testing-base/lib/components/mock.slides.component.mjs +0 -41
  1286. package/esm2022/testing-base/lib/components/mock.spinner.component.mjs +0 -29
  1287. package/esm2022/testing-base/lib/components/mock.stock-chart.component.mjs +0 -34
  1288. package/esm2022/testing-base/lib/components/mock.tab-button.component.mjs +0 -36
  1289. package/esm2022/testing-base/lib/components/mock.tab-navigation-item.component.mjs +0 -31
  1290. package/esm2022/testing-base/lib/components/mock.tab-navigation.component.mjs +0 -34
  1291. package/esm2022/testing-base/lib/components/mock.tabs.component.mjs +0 -29
  1292. package/esm2022/testing-base/lib/components/mock.textarea.component.mjs +0 -42
  1293. package/esm2022/testing-base/lib/components/mock.toggle-button.component.mjs +0 -36
  1294. package/esm2022/testing-base/lib/components/mock.toggle.component.mjs +0 -38
  1295. package/esm2022/testing-base/lib/directives/index.mjs +0 -18
  1296. package/esm2022/testing-base/lib/directives/mock.accordion.directive.mjs +0 -27
  1297. package/esm2022/testing-base/lib/directives/mock.affix.directive.mjs +0 -30
  1298. package/esm2022/testing-base/lib/directives/mock.card-as-button.directive.mjs +0 -27
  1299. package/esm2022/testing-base/lib/directives/mock.component-loader.directive.mjs +0 -31
  1300. package/esm2022/testing-base/lib/directives/mock.date-input.directive.mjs +0 -27
  1301. package/esm2022/testing-base/lib/directives/mock.decimal-mask.directive.mjs +0 -41
  1302. package/esm2022/testing-base/lib/directives/mock.fit-heading.directive.mjs +0 -30
  1303. package/esm2022/testing-base/lib/directives/mock.floating.directive.mjs +0 -69
  1304. package/esm2022/testing-base/lib/directives/mock.infinite-scroll.directive.mjs +0 -33
  1305. package/esm2022/testing-base/lib/directives/mock.key-handler.directive.mjs +0 -27
  1306. package/esm2022/testing-base/lib/directives/mock.list-item-color.directive.mjs +0 -30
  1307. package/esm2022/testing-base/lib/directives/mock.list.directive.mjs +0 -89
  1308. package/esm2022/testing-base/lib/directives/mock.modal-router-link.directive.mjs +0 -33
  1309. package/esm2022/testing-base/lib/directives/mock.portal.directive.mjs +0 -28
  1310. package/esm2022/testing-base/lib/directives/mock.slide.directive.mjs +0 -26
  1311. package/esm2022/testing-base/lib/directives/mock.theme-color.directive.mjs +0 -34
  1312. package/esm2022/testing-base/lib/index.mjs +0 -4
  1313. package/esm2022/testing-base/lib/kirby-testing-base.module.mjs +0 -96
  1314. package/esm2022/testing-base/lib/mock-components.mjs +0 -142
  1315. package/esm2022/testing-base/lib/mock-directives.mjs +0 -39
  1316. package/esm2022/testing-base/public_api.mjs +0 -2
  1317. package/esm2022/testing-jasmine/kirbydesign-designsystem-testing-jasmine.mjs +0 -5
  1318. package/esm2022/testing-jasmine/lib/kirby-testing.module.mjs +0 -20
  1319. package/esm2022/testing-jasmine/lib/mock-providers.mjs +0 -86
  1320. package/esm2022/testing-jasmine/public_api.mjs +0 -2
  1321. package/esm2022/testing-jest/kirbydesign-designsystem-testing-jest.mjs +0 -5
  1322. package/esm2022/testing-jest/lib/kirby-testing.module.mjs +0 -20
  1323. package/esm2022/testing-jest/lib/mock-providers.mjs +0 -92
  1324. package/esm2022/testing-jest/public_api.mjs +0 -2
  1325. package/esm2022/toast/config/toast-config.mjs +0 -2
  1326. package/esm2022/toast/kirbydesign-designsystem-toast.mjs +0 -5
  1327. package/esm2022/toast/public_api.mjs +0 -4
  1328. package/esm2022/toast/services/indexs.mjs +0 -3
  1329. package/esm2022/toast/services/toast.controller.mjs +0 -22
  1330. package/esm2022/toast/services/toast.helper.mjs +0 -39
  1331. package/esm2022/toggle/kirbydesign-designsystem-toggle.mjs +0 -5
  1332. package/esm2022/toggle/public_api.mjs +0 -2
  1333. package/esm2022/toggle/toggle.component.mjs +0 -114
  1334. package/esm2022/toggle-button/kirbydesign-designsystem-toggle-button.mjs +0 -5
  1335. package/esm2022/toggle-button/public_api.mjs +0 -3
  1336. package/esm2022/toggle-button/toggle-button.component.mjs +0 -30
  1337. package/esm2022/toggle-button/toggle-button.module.mjs +0 -19
  1338. package/esm2022/types/event-listener-dispose-fn.mjs +0 -2
  1339. package/esm2022/types/kirbydesign-designsystem-types.mjs +0 -5
  1340. package/esm2022/types/public_api.mjs +0 -4
  1341. package/esm2022/types/unobserve-fn.mjs +0 -2
  1342. package/esm2022/types/window-ref.mjs +0 -16
  1343. package/ngcc.config.js +0 -3
@@ -1 +1 @@
1
- {"version":3,"file":"kirbydesign-designsystem-list.mjs","sources":["../../list/src/directives/infinite-scroll.directive.ts","../../list/src/directives/list-item-color.directive.ts","../../list/src/helpers/list-helper.ts","../../list/src/list-experimental/list-experimental.component.ts","../../list/src/list-experimental/list-experimental.component.html","../../list/src/list-header/list-header.component.ts","../../list/src/list-header/list-header.component.html","../../list/src/list-item/list-item.component.ts","../../list/src/list-item/list-item.component.html","../../list/src/list-section-header/list-section-header.component.ts","../../list/src/list-section-header/list-section-header.component.html","../../list/src/list.directive.ts","../../list/src/list.component.ts","../../list/src/list.component.html","../../list/src/list.module.ts","../../list/src/kirbydesign-designsystem-list.ts"],"sourcesContent":["import {\n AfterViewInit,\n Directive,\n ElementRef,\n EventEmitter,\n HostListener,\n Input,\n NgZone,\n OnDestroy,\n Output,\n} from '@angular/core';\nimport { WindowRef } from '@kirbydesign/designsystem/types';\nimport { fromEvent, Subject } from 'rxjs';\nimport { debounceTime, filter, map, takeUntil } from 'rxjs/operators';\n\nimport { Scroll } from './scroll.model';\n\n/**\n * Specify debounce duration in ms\n */\nexport const INFINITE_SCROLL_DEBOUNCE = 100;\n\n@Directive({\n selector: '[kirbyInfiniteScroll]',\n})\nexport class InfiniteScrollDirective implements AfterViewInit, OnDestroy {\n /**\n * Event that will be triggered when the user has scrolled to\n * bottom of the element\n */\n @Output() scrollEnd = new EventEmitter<void>();\n\n /**\n * If true then {@link scrollEnd} event should NOT be emitted\n */\n @Input() disabled = false;\n\n /**\n * Emits a new value on element scroll event\n */\n scroll$: Subject<Scroll> = new Subject<Scroll>();\n\n /**\n * Completes on component destroy lifecycle event\n * used to unsubscribe from infinite observables\n */\n private ngUnsubscribe$ = new Subject<void>();\n\n /**\n * An offset from the bottom of the element to trigger {@link scrollEnd} event\n */\n private offset = 0.8;\n\n constructor(\n private elementRef: ElementRef,\n private windowRef: WindowRef,\n private zone: NgZone\n ) {}\n\n ngAfterViewInit(): void {\n /**\n * Subscribe to {@link scroll$} observable and emit {@link scrollEnd} event\n * when element scroll position has surpassed the offset.\n */\n this.scroll$\n .pipe(\n takeUntil(this.ngUnsubscribe$),\n debounceTime(INFINITE_SCROLL_DEBOUNCE),\n filter(() => !this.disabled),\n filter((scroll) => {\n return (\n scroll.elementHeight * (1 - this.offset) >=\n scroll.distanceToViewBottom - scroll.viewHeight\n );\n })\n )\n .subscribe(() => {\n this.scrollEnd.emit();\n });\n\n /**\n * Subscribe to the ionScroll event on the ion-content around the list (if any)\n * and emit {@link scrollEnd} event when element scroll position has surpassed the offset.\n */\n setTimeout(() => {\n const ionContent: HTMLElement = this.elementRef.nativeElement.closest('ion-content');\n if (ionContent) {\n // we run the 'ionScroll' event outside angular, as it would trigger change detection on each scroll\n this.zone.runOutsideAngular(() => {\n fromEvent<any>(ionContent, 'ionScroll')\n .pipe(\n takeUntil(this.ngUnsubscribe$),\n debounceTime(INFINITE_SCROLL_DEBOUNCE),\n filter(() => !this.disabled),\n map(() => this.getScroll()),\n filter((scroll) => {\n return (\n scroll.elementHeight * (1 - this.offset) >=\n scroll.distanceToViewBottom - scroll.viewHeight\n );\n })\n )\n .subscribe(() => {\n // we make sure to emit the event inside angular again. As we want to show the spinner and need change detection for that.\n this.zone.run(() => this.scrollEnd.emit());\n });\n });\n }\n });\n }\n\n /**\n * On element scroll event emit next {@link scroll$} observable value\n */\n @HostListener('window:scroll')\n onScroll(): void {\n if (this.disabled) return;\n const scroll = this.getScroll();\n this.scroll$.next(scroll);\n }\n\n /**\n * trigger {@link ngUnsubscribe} complete on component destroy lifecycle hook\n */\n ngOnDestroy(): void {\n this.ngUnsubscribe$.next();\n this.ngUnsubscribe$.complete();\n }\n\n private getScroll(): Scroll {\n const element = this.elementRef.nativeElement as HTMLElement;\n const boundindClientRect = element.getBoundingClientRect();\n\n const distanceToViewBottom = boundindClientRect.bottom;\n const elementHeight = boundindClientRect.height;\n const viewHeight = this.windowRef.nativeWindow.innerHeight;\n\n return { distanceToViewBottom, elementHeight, viewHeight };\n }\n}\n","import { Directive, HostBinding, Input, OnChanges } from '@angular/core';\n\nimport { ThemeColor } from '@kirbydesign/core';\n\n@Directive({\n selector: '[kirbyListItemColor]',\n})\nexport class ListItemColorDirective implements OnChanges {\n @Input()\n kirbyListItemColor: (item: any) => ThemeColor;\n @Input() item: any;\n @HostBinding('class')\n color: ThemeColor;\n\n ngOnChanges(): void {\n this.color = this.getColor();\n }\n\n private getColor(): ThemeColor {\n if (!this.kirbyListItemColor || !this.item) {\n return;\n }\n\n const themeColor = this.kirbyListItemColor(this.item);\n return themeColor;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { ListComponent } from '../list.component';\n\ntype Section<T> = {\n name: string;\n items: T[];\n};\n\ntype SectionWithStandAloneItems<T> = {\n name: string;\n lists: T[][];\n};\n\n@Injectable()\nexport class ListHelper {\n public onLoadOnDemand(component: ListComponent) {\n if (component.isLoadOnDemandEnabled && !component._isLoading) {\n component._isLoading = true;\n component.loadOnDemand.emit({\n complete: (disableLoadOnDemand: boolean) => {\n component.isLoadOnDemandEnabled = !disableLoadOnDemand;\n component._isLoading = false;\n },\n });\n }\n }\n\n public groupSections<T>(items: T[], getGroupName: (item: T) => string): Section<T>[] {\n const groupsMap = new Map<string, T[]>();\n\n items.forEach((item) => {\n const itemGroup = getGroupName(item);\n const groupItems = groupsMap.get(itemGroup);\n\n if (groupItems) {\n groupItems.push(item);\n } else {\n groupsMap.set(itemGroup, [item]);\n }\n });\n\n return Array.from(groupsMap)\n .sort(([name], [otherName]) => name.localeCompare(otherName))\n .map(([name, items]) => {\n return { name, items };\n });\n }\n\n public groupStandAloneItems<T>(items: T[], standAloneProperty: string): { items: T[] }[] {\n const list = items.reduce(\n (accumulator, item) => {\n const lastList = accumulator[accumulator.length - 1];\n const lastItemInList = lastList[lastList.length - 1];\n\n if (!lastItemInList) {\n lastList.push(item);\n } else if (!item[standAloneProperty] && !lastItemInList[standAloneProperty]) {\n lastList.push(item);\n } else {\n accumulator.push([item]);\n }\n\n return accumulator;\n },\n [[]] as [T[]]\n );\n\n return list.map((items) => {\n return { items };\n });\n }\n\n public groupSectionsWithStandAloneItems<T>(\n items: T[],\n getGroupName: (item: T) => string,\n standAloneProperty: string\n ): SectionWithStandAloneItems<T>[] {\n const sectionsMap = new Map<string, T[][]>();\n\n items.forEach((item) => {\n const sectionName = getGroupName(item);\n\n if (sectionsMap.has(sectionName)) {\n const section = sectionsMap.get(sectionName);\n const lastListInSection = section[section.length - 1];\n const lastItemInList = lastListInSection[lastListInSection.length - 1];\n\n if (!item[standAloneProperty] && !lastItemInList[standAloneProperty]) {\n lastListInSection.push(item);\n } else {\n section.push([item]);\n }\n } else {\n sectionsMap.set(sectionName, [[item]]);\n }\n });\n\n return Array.from(sectionsMap)\n .sort(([name], [otherName]) => name.localeCompare(otherName))\n .map(([name, lists]) => {\n return { name, lists };\n });\n }\n}\n","import { ChangeDetectionStrategy, Component, HostListener, ViewChild } from '@angular/core';\nimport { IonList } from '@ionic/angular/standalone';\nimport { elementHasAncestor } from '@kirbydesign/designsystem/helpers';\n\n@Component({\n selector: 'kirby-list-experimental',\n templateUrl: './list-experimental.component.html',\n styleUrls: ['./list-experimental.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ListExperimentalComponent {\n @ViewChild(IonList, { static: true }) list: IonList;\n\n @HostListener('click', ['$event'])\n closeAllSlidingItems(e: MouseEvent) {\n if (elementHasAncestor(e.target as HTMLElement, 'ion-item-option', 'ion-list')) {\n this.list.closeSlidingItems();\n }\n }\n}\n","<ng-content select=\"[outside]\"></ng-content>\n<div class=\"rounded shadow first-item-padding last-item-padding\">\n <ng-content></ng-content>\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'kirby-list-header',\n templateUrl: './list-header.component.html',\n styleUrls: ['./list-header.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ListHeaderComponent {\n constructor() {}\n}\n","<ng-content></ng-content>\n","import {\n AfterViewInit,\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { IonItemSliding } from '@ionic/angular/standalone';\n\nimport { ThemeColor } from '@kirbydesign/core';\nimport { PlatformService } from '@kirbydesign/designsystem/helpers';\n\nimport { ListSwipeAction, ListSwipeDirection, ListSwipeEnd } from '../list-swipe-action.type';\n\nexport type BoundaryClass = 'first' | 'last';\n\n@Component({\n selector: 'kirby-list-item',\n templateUrl: './list-item.component.html',\n styleUrls: ['../list.component.scss', './list-item.component.scss'],\n})\nexport class ListItemComponent implements OnInit, AfterViewInit {\n _isSwipingEnabled = false;\n\n constructor(private platform: PlatformService) {\n this.initializeSwipeActions();\n }\n\n @ViewChild(IonItemSliding) ionItemSliding: IonItemSliding;\n\n @Input() item: any;\n\n @Input() boundaryClass: BoundaryClass | BoundaryClass[];\n\n @Input() swipeActions: ListSwipeAction[] = [];\n\n @Input() itemTemplate: TemplateRef<any>;\n\n @Input() isSelected: boolean;\n\n @Input() isSelectable: boolean;\n\n @Input() getItemColor: (item: any) => ThemeColor;\n\n @Output() itemSelect = new EventEmitter<any>();\n\n _onItemSelect(item: any) {\n if (!this.isSelectable) return;\n this.itemSelect.emit(item);\n }\n\n @Output() swipeActionSelect = new EventEmitter<any>();\n\n _onSwipeActionSelect(swipeAction, item, event) {\n this.swipeActionSelect.emit({\n swipeAction,\n item,\n event,\n });\n }\n\n ngOnInit() {\n this.initializeSwipeActions();\n }\n\n ngAfterViewInit(): void {\n if (!this.itemTemplate) {\n console.warn('No item template was provided.');\n }\n }\n\n _hasSwipeActions(item: any): boolean {\n if (!Array.isArray(this.swipeActions)) {\n return false;\n }\n return this.swipeActions.some((swipeAction) => {\n if (swipeAction.isDisabled instanceof Function && swipeAction.isDisabled(item)) {\n return false;\n }\n if (swipeAction.isDisabled === true) {\n return false;\n }\n return swipeAction.position === 'left' || swipeAction.position === 'right';\n });\n }\n\n _getSwipeActions(item: any, direction?: ListSwipeDirection): ListSwipeAction[] {\n if (!Array.isArray(this.swipeActions)) {\n return [];\n }\n return this.swipeActions.filter((swipeAction) => {\n if (this.isSwipeActionDisabled(swipeAction, item)) {\n return false;\n }\n return direction ? swipeAction.position === direction : true;\n });\n }\n\n private isSwipeActionDisabled(swipeAction: ListSwipeAction, item: any): boolean {\n if (swipeAction.isDisabled instanceof Function && swipeAction.isDisabled(item)) {\n return true;\n }\n return swipeAction.isDisabled === true;\n }\n\n _getSwipeActionEnd(item: any): ListSwipeEnd {\n if (this._getSwipeActions(item, 'left').length) {\n return 'start';\n }\n return 'end';\n }\n\n _getSwipeActionIcon(swipeAction: ListSwipeAction, item: any): string {\n if (!swipeAction.icon) return;\n\n if (swipeAction.icon instanceof Function) {\n return swipeAction.icon(item);\n }\n return swipeAction.icon;\n }\n\n _getSwipeActionTitle(swipeAction: ListSwipeAction, item: any): string {\n if (swipeAction.title instanceof Function) {\n return swipeAction.title(item);\n }\n return swipeAction.title;\n }\n\n _getSwipeActionType(swipeAction: ListSwipeAction, item: any): ThemeColor {\n if (swipeAction.type instanceof Function) {\n return swipeAction.type(item);\n }\n return swipeAction.type;\n }\n\n private initializeSwipeActions(): void {\n if (this.swipeActions && this.swipeActions.length) {\n this._isSwipingEnabled = this.platform.isTouch();\n }\n }\n}\n","<ion-item-sliding\n [class.selected]=\"isSelected\"\n [kirbyListItemColor]=\"getItemColor\"\n [item]=\"item\"\n [disabled]=\"_isSwipingEnabled ? null : true\"\n keyHandler\n [ngClass]=\"boundaryClass\"\n (click)=\"_onItemSelect(item)\"\n>\n <ng-container\n *ngTemplateOutlet=\"swipeActionsTemplate; context: { $implicit: item }\"\n ></ng-container>\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"></ng-container>\n</ion-item-sliding>\n\n<ng-template #swipeActionsTemplate let-item>\n <ion-item-options *ngIf=\"_hasSwipeActions(item)\" [side]=\"_getSwipeActionEnd(item)\">\n <div class=\"swipe-action\">\n <ng-container *ngFor=\"let swipeAction of _getSwipeActions(item)\">\n <ion-item-option\n [ngClass]=\"_getSwipeActionType(swipeAction, item)\"\n (click)=\"_onSwipeActionSelect(swipeAction, item, $event)\"\n >\n <div class=\"item-content\">\n <kirby-icon\n *ngIf=\"_getSwipeActionIcon(swipeAction, item)\"\n size=\"sm\"\n [name]=\"_getSwipeActionIcon(swipeAction, item)\"\n ></kirby-icon>\n <ion-label>\n {{ _getSwipeActionTitle(swipeAction, item) }}\n </ion-label>\n </div>\n </ion-item-option>\n </ng-container>\n </div>\n </ion-item-options>\n</ng-template>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'kirby-list-section-header',\n templateUrl: './list-section-header.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ListSectionHeaderComponent {\n @Input() title: string;\n}\n","<div class=\"header\">\n <span class=\"kirby-text-small\">{{ title }}</span>\n</div>\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: '[kirbyListItemTemplate]',\n})\nexport class ListItemTemplateDirective {}\n\n@Directive({\n selector: '[kirbyListHeader], [kirbyListHeaderTemplate]',\n})\nexport class ListHeaderDirective {}\n\n@Directive({\n selector: '[kirbyListSectionHeader], [kirbyListSectionHeaderTemplate]',\n})\nexport class ListSectionHeaderDirective {}\n\n@Directive({\n selector: '[kirbyListFooter], [kirbyListFooterTemplate]',\n})\nexport class ListFooterDirective {}\n","import {\n Component,\n ContentChild,\n EventEmitter,\n HostBinding,\n Input,\n OnChanges,\n OnInit,\n Output,\n TemplateRef,\n TrackByFunction,\n ViewChild,\n} from '@angular/core';\n\nimport { ThemeColor } from '@kirbydesign/core';\n\nimport { InfiniteScrollDirective } from './directives/infinite-scroll.directive';\nimport { ListHelper } from './helpers/list-helper';\nimport { BoundaryClass } from './list-item/list-item.component';\nimport { ListSwipeAction } from './list-swipe-action.type';\nimport {\n ListFooterDirective,\n ListHeaderDirective,\n ListItemTemplateDirective,\n ListSectionHeaderDirective,\n} from './list.directive';\nimport { LoadOnDemandEvent } from './list.event';\n\nexport type ListShape = 'square' | 'rounded' | 'none';\n\nexport type StandAloneSpacing =\n | 'xxxxs'\n | 'xxxs'\n | 'xxs'\n | 'xs'\n | 'sm'\n | 'md'\n | 'lg'\n | 'xl'\n | 'xxl'\n | 'xxxl';\n@Component({\n selector: 'kirby-list',\n templateUrl: './list.component.html',\n styleUrls: ['./list.component.scss'],\n providers: [ListHelper],\n})\nexport class ListComponent implements OnInit, OnChanges {\n @ViewChild('list', { static: true }) list: any;\n @ViewChild(InfiniteScrollDirective) scrollDirective: InfiniteScrollDirective;\n\n /**\n * Provide items for the list to render. Items must be provided in the order you expect them to be rendered.\n */\n @Input()\n items: any[] = [];\n\n @Input() getItemColor: (item: any) => ThemeColor;\n\n /**\n * Callback to determine name of section. Sections will be ordered alphabetically.\n */\n @Input() getSectionName: (item: any) => string;\n\n /**\n * Callback that defines how to track changes for items in the iterable.\n */\n @Input() trackBy: TrackByFunction<any>;\n\n /**\n * Property name to decide which items should be stand alone\n */\n @Input() getStandAloneByProperty: string;\n\n /**\n * Bottom margin for stand alone items\n */\n @Input() standAloneSpacing: StandAloneSpacing = 'xxs';\n\n /**\n * Text to display when no more items can be loaded (used for \"on demand\"-loading).\n */\n @Input() noMoreItemsText: string;\n\n /**\n * Determines if dividers (bottom-border on list items) should be shown or not.\n */\n @Input() showDivider = true;\n\n /**\n * Determines if list row text should turn bold on selection\n */\n @Input() markSelectedRow = false;\n\n /**\n * Determine outline shape of:\n * - list, if {@link #isSectionsEnabled} is `false`\n * - section, if {@link #isSectionsEnabled} is `true`\n *\n * `square` means **without** rounded corners, `rounded` means **with** rounded corners., `none` means **without** padding, border, box-shadow and background.\n */\n @Input() shape: ListShape = 'rounded';\n\n @HostBinding('class.shape-rounded')\n public get isShapeRounded(): boolean {\n return this.shape === 'rounded';\n }\n\n @HostBinding('class.shape-none')\n public get isShapeNone(): boolean {\n return this.shape === 'none';\n }\n\n @HostBinding('class.item-spacing')\n @Input()\n hasItemSpacing: boolean;\n\n /**\n * Determines if the loadOnDemand event should be emitted.\n * Will default to true if there is at least one subscriber to the loadOnDemand event\n */\n @Input() isLoadOnDemandEnabled: boolean;\n\n /**\n * Emitting event when more items are to be loaded.\n */\n @Output() loadOnDemand = new EventEmitter<LoadOnDemandEvent>();\n\n /**\n * Determines if list items should have swipe actions or not\n * - the order of swipe actions is used to determine edge actions,\n * as well as their order of appearance on the screen.\n */\n @Input() swipeActions: ListSwipeAction[] = [];\n\n /**\n * Emitting event when an item is selected (tapped on mobile, clicked on web)\n */\n @Output() itemSelect = new EventEmitter<any>();\n\n @Input() disableSelectionHighlight: boolean = false;\n\n @ContentChild(ListHeaderDirective, { static: false, read: TemplateRef })\n headerTemplate: TemplateRef<any>;\n\n @ContentChild(ListSectionHeaderDirective, { static: false, read: TemplateRef })\n sectionHeaderTemplate: TemplateRef<any>;\n\n @ContentChild(ListFooterDirective, { static: false, read: TemplateRef })\n footerTemplate: TemplateRef<any>;\n\n /**\n * The first element that matches ListItemDirective.\n * As a structural directive it unfolds into a template. This is a reference to that.\n */\n @ContentChild(ListItemTemplateDirective, { static: true, read: TemplateRef })\n itemTemplate: TemplateRef<any>;\n\n @HostBinding('class.has-sections') _isSectionsEnabled: boolean;\n @HostBinding('class.has-stand-alone') _isStandAloneEnabled: boolean;\n\n _isSelectable: boolean;\n _isLoading: boolean;\n _groupedItems: any[];\n _selectedItem: any;\n\n constructor(private listHelper: ListHelper) {}\n\n ngOnInit() {\n this._isSelectable = this.itemSelect.observers.length > 0;\n\n if (this.isLoadOnDemandEnabled === undefined) {\n this.isLoadOnDemandEnabled = this.loadOnDemand.observers.length > 0;\n }\n }\n\n ngOnChanges(): void {\n this._isSectionsEnabled = !!this.getSectionName;\n this._isStandAloneEnabled = !!this.getStandAloneByProperty;\n\n if (this._isSectionsEnabled && this._isStandAloneEnabled) {\n this._groupedItems = this.listHelper.groupSectionsWithStandAloneItems(\n this.items,\n this.getSectionName,\n this.getStandAloneByProperty\n );\n } else if (this._isSectionsEnabled) {\n this._groupedItems = this.listHelper.groupSections(this.items, this.getSectionName);\n } else if (this._isStandAloneEnabled) {\n this._groupedItems = this.listHelper.groupStandAloneItems(\n this.items,\n this.getStandAloneByProperty\n );\n }\n }\n\n _onLoadOnDemand() {\n this.listHelper.onLoadOnDemand(this);\n }\n\n defaultTrackBy(index: number): any {\n return index;\n }\n\n sectionTrackBy(_: number, section: { name: string }): string {\n return section.name;\n }\n\n onItemSelect(item: any) {\n if (!this.disableSelectionHighlight) {\n this._selectedItem = item;\n }\n this.itemSelect.emit(item);\n }\n\n onSwipeActionSelect(args: any): void {\n args.swipeAction.onSelected(args.item);\n this.list.closeSlidingItems();\n args.event.stopPropagation();\n }\n\n _getBoundaryClass(index: number, section?: any[]): BoundaryClass[] | BoundaryClass {\n if (index === 0) {\n if (this.headerTemplate) return null;\n else return section.length === 1 ? ['first', 'last'] : 'first';\n }\n\n if (index === section.length - 1) {\n return this.footerTemplate ? null : 'last';\n }\n\n return null;\n }\n\n standAloneClass() {\n return this._isStandAloneEnabled ? `stand-alone-bottom-margin-${this.standAloneSpacing}` : '';\n }\n}\n","<ion-list\n #list\n kirbyInfiniteScroll\n (scrollEnd)=\"_onLoadOnDemand()\"\n [disabled]=\"!isLoadOnDemandEnabled\"\n class=\"list\"\n [class.has-header]=\"headerTemplate\"\n [class.has-footer]=\"footerTemplate\"\n [class.has-divider]=\"showDivider\"\n>\n <ion-list-header *ngIf=\"headerTemplate\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </ion-list-header>\n\n <ng-container\n *ngTemplateOutlet=\"\n _isSectionsEnabled || _isStandAloneEnabled ? groupedListTemplate : itemsTemplate;\n context: { $implicit: items }\n \"\n ></ng-container>\n\n <div *ngIf=\"footerTemplate\" class=\"footer\">\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n</ion-list>\n\n<p *ngIf=\"!isLoadOnDemandEnabled && noMoreItemsText\" class=\"no-more-items\">\n {{ noMoreItemsText }}\n</p>\n<div *ngIf=\"_isLoading\" class=\"loading\">\n <kirby-spinner></kirby-spinner>\n</div>\n\n<ng-template #groupedListTemplate>\n <ion-item-group\n *ngFor=\"let section of _groupedItems; trackBy: sectionTrackBy\"\n [ngClass]=\"standAloneClass()\"\n >\n <ion-item-divider *ngIf=\"_isSectionsEnabled\">\n <ng-container\n *ngTemplateOutlet=\"sectionHeaderTemplate; context: { $implicit: section.name }\"\n ></ng-container>\n </ion-item-divider>\n\n <ng-container *ngIf=\"_isSectionsEnabled && _isStandAloneEnabled; else groupedFlatList\">\n <div class=\"list-items\" [ngClass]=\"standAloneClass()\" *ngFor=\"let list of section.lists\">\n <ng-container\n *ngTemplateOutlet=\"itemsTemplate; context: { $implicit: list }\"\n ></ng-container>\n </div>\n </ng-container>\n\n <ng-template #groupedFlatList>\n <div class=\"list-items\" [ngClass]=\"standAloneClass()\">\n <ng-container\n *ngTemplateOutlet=\"itemsTemplate; context: { $implicit: section.items }\"\n ></ng-container>\n </div>\n </ng-template>\n </ion-item-group>\n</ng-template>\n\n<ng-template #itemsTemplate let-items>\n <kirby-list-item\n *ngFor=\"let item of items; let i = index; trackBy: trackBy || defaultTrackBy\"\n [item]=\"item\"\n [itemTemplate]=\"itemTemplate\"\n [swipeActions]=\"swipeActions\"\n [boundaryClass]=\"_getBoundaryClass(i, items)\"\n [isSelectable]=\"_isSelectable\"\n [getItemColor]=\"getItemColor\"\n [isSelected]=\"_isSelectable && item === _selectedItem\"\n (itemSelect)=\"onItemSelect($event)\"\n (swipeActionSelect)=\"onSwipeActionSelect($event)\"\n [class.is-single]=\"items.length === 1\"\n ></kirby-list-item>\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SpinnerModule } from '@kirbydesign/designsystem/spinner';\n\nimport { IconModule } from '@kirbydesign/designsystem/icon';\n\nimport {\n IonItemDivider,\n IonItemGroup,\n IonItemOptions,\n IonItemSliding,\n IonLabel,\n IonList,\n IonListHeader,\n} from '@ionic/angular/standalone';\nimport { InfiniteScrollDirective } from './directives/infinite-scroll.directive';\nimport { ListItemColorDirective } from './directives/list-item-color.directive';\nimport { ListExperimentalComponent } from './list-experimental/list-experimental.component';\nimport { ListHeaderComponent } from './list-header/list-header.component';\nimport { ListItemComponent } from './list-item/list-item.component';\nimport { ListSectionHeaderComponent } from './list-section-header/list-section-header.component';\nimport { ListComponent } from './list.component';\nimport {\n ListFooterDirective,\n ListHeaderDirective,\n ListItemTemplateDirective,\n ListSectionHeaderDirective,\n} from './list.directive';\n\nconst exportedDeclarations = [\n ListComponent,\n ListItemComponent,\n ListItemTemplateDirective,\n ListSectionHeaderComponent,\n ListSectionHeaderDirective,\n ListHeaderDirective,\n ListHeaderComponent,\n ListFooterDirective,\n ListExperimentalComponent,\n];\n\nconst declarations = [\n ...exportedDeclarations,\n ListItemColorDirective,\n InfiniteScrollDirective,\n ListItemComponent,\n];\n\n@NgModule({\n declarations: declarations,\n imports: [\n CommonModule,\n IconModule,\n SpinnerModule,\n IonItemDivider,\n IonItemGroup,\n IonItemOptions,\n IonItemSliding,\n IonLabel,\n IonList,\n IonListHeader,\n ],\n exports: exportedDeclarations,\n providers: [],\n})\nexport class ListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1","i5.ListItemColorDirective","i1.ListHelper","i3","i5.ListItemComponent","i6.InfiniteScrollDirective"],"mappings":"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"}
1
+ {"version":3,"file":"kirbydesign-designsystem-list.mjs","sources":["../../list/src/directives/infinite-scroll.directive.ts","../../list/src/directives/list-item-color.directive.ts","../../list/src/helpers/list-helper.ts","../../list/src/list-experimental/list-experimental.component.ts","../../list/src/list-experimental/list-experimental.component.html","../../list/src/list-header/list-header.component.ts","../../list/src/list-header/list-header.component.html","../../list/src/list-item/list-item.component.ts","../../list/src/list-item/list-item.component.html","../../list/src/list-section-header/list-section-header.component.ts","../../list/src/list-section-header/list-section-header.component.html","../../list/src/list.directive.ts","../../list/src/list.component.ts","../../list/src/list.component.html","../../list/src/list.module.ts","../../list/src/kirbydesign-designsystem-list.ts"],"sourcesContent":["import {\n AfterViewInit,\n Directive,\n ElementRef,\n EventEmitter,\n HostListener,\n Input,\n NgZone,\n OnDestroy,\n Output,\n} from '@angular/core';\nimport { WindowRef } from '@kirbydesign/designsystem/types';\nimport { fromEvent, Subject } from 'rxjs';\nimport { debounceTime, filter, map, takeUntil } from 'rxjs/operators';\n\nimport { Scroll } from './scroll.model';\n\n/**\n * Specify debounce duration in ms\n */\nexport const INFINITE_SCROLL_DEBOUNCE = 100;\n\n@Directive({\n selector: '[kirbyInfiniteScroll]',\n standalone: false,\n})\nexport class InfiniteScrollDirective implements AfterViewInit, OnDestroy {\n /**\n * Event that will be triggered when the user has scrolled to\n * bottom of the element\n */\n @Output() scrollEnd = new EventEmitter<void>();\n\n /**\n * If true then {@link scrollEnd} event should NOT be emitted\n */\n @Input() disabled = false;\n\n /**\n * Emits a new value on element scroll event\n */\n scroll$: Subject<Scroll> = new Subject<Scroll>();\n\n /**\n * Completes on component destroy lifecycle event\n * used to unsubscribe from infinite observables\n */\n private ngUnsubscribe$ = new Subject<void>();\n\n /**\n * An offset from the bottom of the element to trigger {@link scrollEnd} event\n */\n private offset = 0.8;\n\n constructor(\n private elementRef: ElementRef,\n private windowRef: WindowRef,\n private zone: NgZone\n ) {}\n\n ngAfterViewInit(): void {\n /**\n * Subscribe to {@link scroll$} observable and emit {@link scrollEnd} event\n * when element scroll position has surpassed the offset.\n */\n this.scroll$\n .pipe(\n takeUntil(this.ngUnsubscribe$),\n debounceTime(INFINITE_SCROLL_DEBOUNCE),\n filter(() => !this.disabled),\n filter((scroll) => {\n return (\n scroll.elementHeight * (1 - this.offset) >=\n scroll.distanceToViewBottom - scroll.viewHeight\n );\n })\n )\n .subscribe(() => {\n this.scrollEnd.emit();\n });\n\n /**\n * Subscribe to the ionScroll event on the ion-content around the list (if any)\n * and emit {@link scrollEnd} event when element scroll position has surpassed the offset.\n */\n setTimeout(() => {\n const ionContent: HTMLElement = this.elementRef.nativeElement.closest('ion-content');\n if (ionContent) {\n // we run the 'ionScroll' event outside angular, as it would trigger change detection on each scroll\n this.zone.runOutsideAngular(() => {\n fromEvent<any>(ionContent, 'ionScroll')\n .pipe(\n takeUntil(this.ngUnsubscribe$),\n debounceTime(INFINITE_SCROLL_DEBOUNCE),\n filter(() => !this.disabled),\n map(() => this.getScroll()),\n filter((scroll) => {\n return (\n scroll.elementHeight * (1 - this.offset) >=\n scroll.distanceToViewBottom - scroll.viewHeight\n );\n })\n )\n .subscribe(() => {\n // we make sure to emit the event inside angular again. As we want to show the spinner and need change detection for that.\n this.zone.run(() => this.scrollEnd.emit());\n });\n });\n }\n });\n }\n\n /**\n * On element scroll event emit next {@link scroll$} observable value\n */\n @HostListener('window:scroll')\n onScroll(): void {\n if (this.disabled) return;\n const scroll = this.getScroll();\n this.scroll$.next(scroll);\n }\n\n /**\n * trigger {@link ngUnsubscribe} complete on component destroy lifecycle hook\n */\n ngOnDestroy(): void {\n this.ngUnsubscribe$.next();\n this.ngUnsubscribe$.complete();\n }\n\n private getScroll(): Scroll {\n const element = this.elementRef.nativeElement as HTMLElement;\n const boundindClientRect = element.getBoundingClientRect();\n\n const distanceToViewBottom = boundindClientRect.bottom;\n const elementHeight = boundindClientRect.height;\n const viewHeight = this.windowRef.nativeWindow.innerHeight;\n\n return { distanceToViewBottom, elementHeight, viewHeight };\n }\n}\n","import { Directive, HostBinding, Input, OnChanges } from '@angular/core';\n\nimport { ThemeColor } from '@kirbydesign/core';\n\n@Directive({\n selector: '[kirbyListItemColor]',\n standalone: false,\n})\nexport class ListItemColorDirective implements OnChanges {\n @Input()\n kirbyListItemColor: (item: any) => ThemeColor;\n @Input() item: any;\n @HostBinding('class')\n color: ThemeColor;\n\n ngOnChanges(): void {\n this.color = this.getColor();\n }\n\n private getColor(): ThemeColor {\n if (!this.kirbyListItemColor || !this.item) {\n return;\n }\n\n const themeColor = this.kirbyListItemColor(this.item);\n return themeColor;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { ListComponent } from '../list.component';\n\ntype Section<T> = {\n name: string;\n items: T[];\n};\n\ntype SectionWithStandAloneItems<T> = {\n name: string;\n lists: T[][];\n};\n\n@Injectable()\nexport class ListHelper {\n public onLoadOnDemand(component: ListComponent) {\n if (component.isLoadOnDemandEnabled && !component._isLoading) {\n component._isLoading = true;\n component.loadOnDemand.emit({\n complete: (disableLoadOnDemand: boolean) => {\n component.isLoadOnDemandEnabled = !disableLoadOnDemand;\n component._isLoading = false;\n },\n });\n }\n }\n\n public groupSections<T>(items: T[], getGroupName: (item: T) => string): Section<T>[] {\n const groupsMap = new Map<string, T[]>();\n\n items.forEach((item) => {\n const itemGroup = getGroupName(item);\n const groupItems = groupsMap.get(itemGroup);\n\n if (groupItems) {\n groupItems.push(item);\n } else {\n groupsMap.set(itemGroup, [item]);\n }\n });\n\n return Array.from(groupsMap)\n .sort(([name], [otherName]) => name.localeCompare(otherName))\n .map(([name, items]) => {\n return { name, items };\n });\n }\n\n public groupStandAloneItems<T>(items: T[], standAloneProperty: string): { items: T[] }[] {\n const list = items.reduce(\n (accumulator, item) => {\n const lastList = accumulator[accumulator.length - 1];\n const lastItemInList = lastList[lastList.length - 1];\n\n if (!lastItemInList) {\n lastList.push(item);\n } else if (!item[standAloneProperty] && !lastItemInList[standAloneProperty]) {\n lastList.push(item);\n } else {\n accumulator.push([item]);\n }\n\n return accumulator;\n },\n [[]] as [T[]]\n );\n\n return list.map((items) => {\n return { items };\n });\n }\n\n public groupSectionsWithStandAloneItems<T>(\n items: T[],\n getGroupName: (item: T) => string,\n standAloneProperty: string\n ): SectionWithStandAloneItems<T>[] {\n const sectionsMap = new Map<string, T[][]>();\n\n items.forEach((item) => {\n const sectionName = getGroupName(item);\n\n if (sectionsMap.has(sectionName)) {\n const section = sectionsMap.get(sectionName);\n const lastListInSection = section[section.length - 1];\n const lastItemInList = lastListInSection[lastListInSection.length - 1];\n\n if (!item[standAloneProperty] && !lastItemInList[standAloneProperty]) {\n lastListInSection.push(item);\n } else {\n section.push([item]);\n }\n } else {\n sectionsMap.set(sectionName, [[item]]);\n }\n });\n\n return Array.from(sectionsMap)\n .sort(([name], [otherName]) => name.localeCompare(otherName))\n .map(([name, lists]) => {\n return { name, lists };\n });\n }\n}\n","import { ChangeDetectionStrategy, Component, HostListener, ViewChild } from '@angular/core';\nimport { IonList } from '@ionic/angular/standalone';\nimport { elementHasAncestor } from '@kirbydesign/designsystem/helpers';\n\n@Component({\n selector: 'kirby-list-experimental',\n templateUrl: './list-experimental.component.html',\n styleUrls: ['./list-experimental.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ListExperimentalComponent {\n @ViewChild(IonList, { static: true }) list: IonList;\n\n @HostListener('click', ['$event'])\n closeAllSlidingItems(e: MouseEvent) {\n if (elementHasAncestor(e.target as HTMLElement, 'ion-item-option', 'ion-list')) {\n this.list.closeSlidingItems();\n }\n }\n}\n","<ng-content select=\"[outside]\"></ng-content>\n<div class=\"rounded shadow first-item-padding last-item-padding\">\n <ng-content></ng-content>\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'kirby-list-header',\n templateUrl: './list-header.component.html',\n styleUrls: ['./list-header.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ListHeaderComponent {\n constructor() {}\n}\n","<ng-content></ng-content>\n","import {\n AfterViewInit,\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { IonItemSliding } from '@ionic/angular/standalone';\n\nimport { ThemeColor } from '@kirbydesign/core';\nimport { PlatformService } from '@kirbydesign/designsystem/helpers';\n\nimport { ListSwipeAction, ListSwipeDirection, ListSwipeEnd } from '../list-swipe-action.type';\n\nexport type BoundaryClass = 'first' | 'last';\n\n@Component({\n selector: 'kirby-list-item',\n templateUrl: './list-item.component.html',\n styleUrls: ['../list.component.scss', './list-item.component.scss'],\n standalone: false,\n})\nexport class ListItemComponent implements OnInit, AfterViewInit {\n _isSwipingEnabled = false;\n\n constructor(private platform: PlatformService) {\n this.initializeSwipeActions();\n }\n\n @ViewChild(IonItemSliding) ionItemSliding: IonItemSliding;\n\n @Input() item: any;\n\n @Input() boundaryClass: BoundaryClass | BoundaryClass[];\n\n @Input() swipeActions: ListSwipeAction[] = [];\n\n @Input() itemTemplate: TemplateRef<any>;\n\n @Input() isSelected: boolean;\n\n @Input() isSelectable: boolean;\n\n @Input() getItemColor: (item: any) => ThemeColor;\n\n @Output() itemSelect = new EventEmitter<any>();\n\n _onItemSelect(item: any) {\n if (!this.isSelectable) return;\n this.itemSelect.emit(item);\n }\n\n @Output() swipeActionSelect = new EventEmitter<any>();\n\n _onSwipeActionSelect(swipeAction, item, event) {\n this.swipeActionSelect.emit({\n swipeAction,\n item,\n event,\n });\n }\n\n ngOnInit() {\n this.initializeSwipeActions();\n }\n\n ngAfterViewInit(): void {\n if (!this.itemTemplate) {\n console.warn('No item template was provided.');\n }\n }\n\n _hasSwipeActions(item: any): boolean {\n if (!Array.isArray(this.swipeActions)) {\n return false;\n }\n return this.swipeActions.some((swipeAction) => {\n if (swipeAction.isDisabled instanceof Function && swipeAction.isDisabled(item)) {\n return false;\n }\n if (swipeAction.isDisabled === true) {\n return false;\n }\n return swipeAction.position === 'left' || swipeAction.position === 'right';\n });\n }\n\n _getSwipeActions(item: any, direction?: ListSwipeDirection): ListSwipeAction[] {\n if (!Array.isArray(this.swipeActions)) {\n return [];\n }\n return this.swipeActions.filter((swipeAction) => {\n if (this.isSwipeActionDisabled(swipeAction, item)) {\n return false;\n }\n return direction ? swipeAction.position === direction : true;\n });\n }\n\n private isSwipeActionDisabled(swipeAction: ListSwipeAction, item: any): boolean {\n if (swipeAction.isDisabled instanceof Function && swipeAction.isDisabled(item)) {\n return true;\n }\n return swipeAction.isDisabled === true;\n }\n\n _getSwipeActionEnd(item: any): ListSwipeEnd {\n if (this._getSwipeActions(item, 'left').length) {\n return 'start';\n }\n return 'end';\n }\n\n _getSwipeActionIcon(swipeAction: ListSwipeAction, item: any): string {\n if (!swipeAction.icon) return;\n\n if (swipeAction.icon instanceof Function) {\n return swipeAction.icon(item);\n }\n return swipeAction.icon;\n }\n\n _getSwipeActionTitle(swipeAction: ListSwipeAction, item: any): string {\n if (swipeAction.title instanceof Function) {\n return swipeAction.title(item);\n }\n return swipeAction.title;\n }\n\n _getSwipeActionType(swipeAction: ListSwipeAction, item: any): ThemeColor {\n if (swipeAction.type instanceof Function) {\n return swipeAction.type(item);\n }\n return swipeAction.type;\n }\n\n private initializeSwipeActions(): void {\n if (this.swipeActions && this.swipeActions.length) {\n this._isSwipingEnabled = this.platform.isTouch();\n }\n }\n}\n","<ion-item-sliding\n [class.selected]=\"isSelected\"\n [kirbyListItemColor]=\"getItemColor\"\n [item]=\"item\"\n [disabled]=\"_isSwipingEnabled ? null : true\"\n keyHandler\n [ngClass]=\"boundaryClass\"\n (click)=\"_onItemSelect(item)\"\n>\n <ng-container\n *ngTemplateOutlet=\"swipeActionsTemplate; context: { $implicit: item }\"\n ></ng-container>\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"></ng-container>\n</ion-item-sliding>\n\n<ng-template #swipeActionsTemplate let-item>\n <ion-item-options *ngIf=\"_hasSwipeActions(item)\" [side]=\"_getSwipeActionEnd(item)\">\n <div class=\"swipe-action\">\n <ng-container *ngFor=\"let swipeAction of _getSwipeActions(item)\">\n <ion-item-option\n [ngClass]=\"_getSwipeActionType(swipeAction, item)\"\n (click)=\"_onSwipeActionSelect(swipeAction, item, $event)\"\n >\n <div class=\"item-content\">\n <kirby-icon\n *ngIf=\"_getSwipeActionIcon(swipeAction, item)\"\n size=\"sm\"\n [name]=\"_getSwipeActionIcon(swipeAction, item)\"\n ></kirby-icon>\n <ion-label>\n {{ _getSwipeActionTitle(swipeAction, item) }}\n </ion-label>\n </div>\n </ion-item-option>\n </ng-container>\n </div>\n </ion-item-options>\n</ng-template>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'kirby-list-section-header',\n templateUrl: './list-section-header.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ListSectionHeaderComponent {\n @Input() title: string;\n}\n","<div class=\"header\">\n <span class=\"kirby-text-small\">{{ title }}</span>\n</div>\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: '[kirbyListItemTemplate]',\n standalone: false,\n})\nexport class ListItemTemplateDirective {}\n\n@Directive({\n selector: '[kirbyListHeader], [kirbyListHeaderTemplate]',\n standalone: false,\n})\nexport class ListHeaderDirective {}\n\n@Directive({\n selector: '[kirbyListSectionHeader], [kirbyListSectionHeaderTemplate]',\n standalone: false,\n})\nexport class ListSectionHeaderDirective {}\n\n@Directive({\n selector: '[kirbyListFooter], [kirbyListFooterTemplate]',\n standalone: false,\n})\nexport class ListFooterDirective {}\n","import {\n Component,\n ContentChild,\n EventEmitter,\n HostBinding,\n Input,\n OnChanges,\n OnInit,\n Output,\n TemplateRef,\n TrackByFunction,\n ViewChild,\n} from '@angular/core';\n\nimport { ThemeColor } from '@kirbydesign/core';\n\nimport { InfiniteScrollDirective } from './directives/infinite-scroll.directive';\nimport { ListHelper } from './helpers/list-helper';\nimport { BoundaryClass } from './list-item/list-item.component';\nimport { ListSwipeAction } from './list-swipe-action.type';\nimport {\n ListFooterDirective,\n ListHeaderDirective,\n ListItemTemplateDirective,\n ListSectionHeaderDirective,\n} from './list.directive';\nimport { LoadOnDemandEvent } from './list.event';\n\nexport type ListShape = 'square' | 'rounded' | 'none';\n\nexport type StandAloneSpacing =\n | 'xxxxs'\n | 'xxxs'\n | 'xxs'\n | 'xs'\n | 'sm'\n | 'md'\n | 'lg'\n | 'xl'\n | 'xxl'\n | 'xxxl';\n@Component({\n selector: 'kirby-list',\n templateUrl: './list.component.html',\n styleUrls: ['./list.component.scss'],\n providers: [ListHelper],\n standalone: false,\n})\nexport class ListComponent implements OnInit, OnChanges {\n @ViewChild('list', { static: true }) list: any;\n @ViewChild(InfiniteScrollDirective) scrollDirective: InfiniteScrollDirective;\n\n /**\n * Provide items for the list to render. Items must be provided in the order you expect them to be rendered.\n */\n @Input()\n items: any[] = [];\n\n @Input() getItemColor: (item: any) => ThemeColor;\n\n /**\n * Callback to determine name of section. Sections will be ordered alphabetically.\n */\n @Input() getSectionName: (item: any) => string;\n\n /**\n * Callback that defines how to track changes for items in the iterable.\n */\n @Input() trackBy: TrackByFunction<any>;\n\n /**\n * Property name to decide which items should be stand alone\n */\n @Input() getStandAloneByProperty: string;\n\n /**\n * Bottom margin for stand alone items\n */\n @Input() standAloneSpacing: StandAloneSpacing = 'xxs';\n\n /**\n * Text to display when no more items can be loaded (used for \"on demand\"-loading).\n */\n @Input() noMoreItemsText: string;\n\n /**\n * Determines if dividers (bottom-border on list items) should be shown or not.\n */\n @Input() showDivider = true;\n\n /**\n * Determines if list row text should turn bold on selection\n */\n @Input() markSelectedRow = false;\n\n /**\n * Determine outline shape of:\n * - list, if {@link #isSectionsEnabled} is `false`\n * - section, if {@link #isSectionsEnabled} is `true`\n *\n * `square` means **without** rounded corners, `rounded` means **with** rounded corners., `none` means **without** padding, border, box-shadow and background.\n */\n @Input() shape: ListShape = 'rounded';\n\n @HostBinding('class.shape-rounded')\n public get isShapeRounded(): boolean {\n return this.shape === 'rounded';\n }\n\n @HostBinding('class.shape-none')\n public get isShapeNone(): boolean {\n return this.shape === 'none';\n }\n\n @HostBinding('class.item-spacing')\n @Input()\n hasItemSpacing: boolean;\n\n /**\n * Determines if the loadOnDemand event should be emitted.\n * Will default to true if there is at least one subscriber to the loadOnDemand event\n */\n @Input() isLoadOnDemandEnabled: boolean;\n\n /**\n * Emitting event when more items are to be loaded.\n */\n @Output() loadOnDemand = new EventEmitter<LoadOnDemandEvent>();\n\n /**\n * Determines if list items should have swipe actions or not\n * - the order of swipe actions is used to determine edge actions,\n * as well as their order of appearance on the screen.\n */\n @Input() swipeActions: ListSwipeAction[] = [];\n\n /**\n * Emitting event when an item is selected (tapped on mobile, clicked on web)\n */\n @Output() itemSelect = new EventEmitter<any>();\n\n @Input() disableSelectionHighlight: boolean = false;\n\n @ContentChild(ListHeaderDirective, { static: false, read: TemplateRef })\n headerTemplate: TemplateRef<any>;\n\n @ContentChild(ListSectionHeaderDirective, { static: false, read: TemplateRef })\n sectionHeaderTemplate: TemplateRef<any>;\n\n @ContentChild(ListFooterDirective, { static: false, read: TemplateRef })\n footerTemplate: TemplateRef<any>;\n\n /**\n * The first element that matches ListItemDirective.\n * As a structural directive it unfolds into a template. This is a reference to that.\n */\n @ContentChild(ListItemTemplateDirective, { static: true, read: TemplateRef })\n itemTemplate: TemplateRef<any>;\n\n @HostBinding('class.has-sections') _isSectionsEnabled: boolean;\n @HostBinding('class.has-stand-alone') _isStandAloneEnabled: boolean;\n\n _isSelectable: boolean;\n _isLoading: boolean;\n _groupedItems: any[];\n _selectedItem: any;\n\n constructor(private listHelper: ListHelper) {}\n\n ngOnInit() {\n this._isSelectable = this.itemSelect.observers.length > 0;\n\n if (this.isLoadOnDemandEnabled === undefined) {\n this.isLoadOnDemandEnabled = this.loadOnDemand.observers.length > 0;\n }\n }\n\n ngOnChanges(): void {\n this._isSectionsEnabled = !!this.getSectionName;\n this._isStandAloneEnabled = !!this.getStandAloneByProperty;\n\n if (this._isSectionsEnabled && this._isStandAloneEnabled) {\n this._groupedItems = this.listHelper.groupSectionsWithStandAloneItems(\n this.items,\n this.getSectionName,\n this.getStandAloneByProperty\n );\n } else if (this._isSectionsEnabled) {\n this._groupedItems = this.listHelper.groupSections(this.items, this.getSectionName);\n } else if (this._isStandAloneEnabled) {\n this._groupedItems = this.listHelper.groupStandAloneItems(\n this.items,\n this.getStandAloneByProperty\n );\n }\n }\n\n _onLoadOnDemand() {\n this.listHelper.onLoadOnDemand(this);\n }\n\n defaultTrackBy(index: number): any {\n return index;\n }\n\n sectionTrackBy(_: number, section: { name: string }): string {\n return section.name;\n }\n\n onItemSelect(item: any) {\n if (!this.disableSelectionHighlight) {\n this._selectedItem = item;\n }\n this.itemSelect.emit(item);\n }\n\n onSwipeActionSelect(args: any): void {\n args.swipeAction.onSelected(args.item);\n this.list.closeSlidingItems();\n args.event.stopPropagation();\n }\n\n _getBoundaryClass(index: number, section?: any[]): BoundaryClass[] | BoundaryClass {\n if (index === 0) {\n if (this.headerTemplate) return null;\n else return section.length === 1 ? ['first', 'last'] : 'first';\n }\n\n if (index === section.length - 1) {\n return this.footerTemplate ? null : 'last';\n }\n\n return null;\n }\n\n standAloneClass() {\n return this._isStandAloneEnabled ? `stand-alone-bottom-margin-${this.standAloneSpacing}` : '';\n }\n}\n","<ion-list\n #list\n kirbyInfiniteScroll\n (scrollEnd)=\"_onLoadOnDemand()\"\n [disabled]=\"!isLoadOnDemandEnabled\"\n class=\"list\"\n [class.has-header]=\"headerTemplate\"\n [class.has-footer]=\"footerTemplate\"\n [class.has-divider]=\"showDivider\"\n>\n <ion-list-header *ngIf=\"headerTemplate\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </ion-list-header>\n\n <ng-container\n *ngTemplateOutlet=\"\n _isSectionsEnabled || _isStandAloneEnabled ? groupedListTemplate : itemsTemplate;\n context: { $implicit: items }\n \"\n ></ng-container>\n\n <div *ngIf=\"footerTemplate\" class=\"footer\">\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n</ion-list>\n\n<p *ngIf=\"!isLoadOnDemandEnabled && noMoreItemsText\" class=\"no-more-items\">\n {{ noMoreItemsText }}\n</p>\n<div *ngIf=\"_isLoading\" class=\"loading\">\n <kirby-spinner></kirby-spinner>\n</div>\n\n<ng-template #groupedListTemplate>\n <ion-item-group\n *ngFor=\"let section of _groupedItems; trackBy: sectionTrackBy\"\n [ngClass]=\"standAloneClass()\"\n >\n <ion-item-divider *ngIf=\"_isSectionsEnabled\">\n <ng-container\n *ngTemplateOutlet=\"sectionHeaderTemplate; context: { $implicit: section.name }\"\n ></ng-container>\n </ion-item-divider>\n\n <ng-container *ngIf=\"_isSectionsEnabled && _isStandAloneEnabled; else groupedFlatList\">\n <div class=\"list-items\" [ngClass]=\"standAloneClass()\" *ngFor=\"let list of section.lists\">\n <ng-container\n *ngTemplateOutlet=\"itemsTemplate; context: { $implicit: list }\"\n ></ng-container>\n </div>\n </ng-container>\n\n <ng-template #groupedFlatList>\n <div class=\"list-items\" [ngClass]=\"standAloneClass()\">\n <ng-container\n *ngTemplateOutlet=\"itemsTemplate; context: { $implicit: section.items }\"\n ></ng-container>\n </div>\n </ng-template>\n </ion-item-group>\n</ng-template>\n\n<ng-template #itemsTemplate let-items>\n <kirby-list-item\n *ngFor=\"let item of items; let i = index; trackBy: trackBy || defaultTrackBy\"\n [item]=\"item\"\n [itemTemplate]=\"itemTemplate\"\n [swipeActions]=\"swipeActions\"\n [boundaryClass]=\"_getBoundaryClass(i, items)\"\n [isSelectable]=\"_isSelectable\"\n [getItemColor]=\"getItemColor\"\n [isSelected]=\"_isSelectable && item === _selectedItem\"\n (itemSelect)=\"onItemSelect($event)\"\n (swipeActionSelect)=\"onSwipeActionSelect($event)\"\n [class.is-single]=\"items.length === 1\"\n ></kirby-list-item>\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SpinnerModule } from '@kirbydesign/designsystem/spinner';\n\nimport { IconModule } from '@kirbydesign/designsystem/icon';\n\nimport {\n IonItemDivider,\n IonItemGroup,\n IonItemOptions,\n IonItemSliding,\n IonLabel,\n IonList,\n IonListHeader,\n} from '@ionic/angular/standalone';\nimport { InfiniteScrollDirective } from './directives/infinite-scroll.directive';\nimport { ListItemColorDirective } from './directives/list-item-color.directive';\nimport { ListExperimentalComponent } from './list-experimental/list-experimental.component';\nimport { ListHeaderComponent } from './list-header/list-header.component';\nimport { ListItemComponent } from './list-item/list-item.component';\nimport { ListSectionHeaderComponent } from './list-section-header/list-section-header.component';\nimport { ListComponent } from './list.component';\nimport {\n ListFooterDirective,\n ListHeaderDirective,\n ListItemTemplateDirective,\n ListSectionHeaderDirective,\n} from './list.directive';\n\nconst exportedDeclarations = [\n ListComponent,\n ListItemComponent,\n ListItemTemplateDirective,\n ListSectionHeaderComponent,\n ListSectionHeaderDirective,\n ListHeaderDirective,\n ListHeaderComponent,\n ListFooterDirective,\n ListExperimentalComponent,\n];\n\nconst declarations = [\n ...exportedDeclarations,\n ListItemColorDirective,\n InfiniteScrollDirective,\n ListItemComponent,\n];\n\n@NgModule({\n declarations: declarations,\n imports: [\n CommonModule,\n IconModule,\n SpinnerModule,\n IonItemDivider,\n IonItemGroup,\n IonItemOptions,\n IonItemSliding,\n IonLabel,\n IonList,\n IonListHeader,\n ],\n exports: exportedDeclarations,\n providers: [],\n})\nexport class ListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1","i5.ListItemColorDirective","i1.ListHelper","i3","i5.ListItemComponent","i6.InfiniteScrollDirective"],"mappings":"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"}
@@ -40,10 +40,10 @@ class LoadingOverlayService {
40
40
  this.ionLoading = null;
41
41
  }
42
42
  }
43
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoadingOverlayService, deps: [{ token: i1.LoadingController }, { token: i0.ComponentFactoryResolver }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
44
- /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoadingOverlayService, providedIn: 'root' }); }
43
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: LoadingOverlayService, deps: [{ token: i1.LoadingController }, { token: i0.ComponentFactoryResolver }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
44
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: LoadingOverlayService, providedIn: 'root' }); }
45
45
  }
46
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoadingOverlayService, decorators: [{
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: LoadingOverlayService, decorators: [{
47
47
  type: Injectable,
48
48
  args: [{
49
49
  providedIn: 'root',
@@ -56,12 +56,12 @@ class LoadingOverlayComponent {
56
56
  this.showBackdrop = true;
57
57
  this.hideContent = false;
58
58
  }
59
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoadingOverlayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
60
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LoadingOverlayComponent, isStandalone: true, selector: "kirby-loading-overlay", inputs: { isLoading: "isLoading", showBackdrop: "showBackdrop", hideContent: "hideContent" }, ngImport: i0, template: "<div class=\"overlay-wrapper\">\n <div\n *ngIf=\"isLoading\"\n [ngClass]=\"{\n backdrop: showBackdrop && !hideContent,\n 'hide-content': hideContent\n }\"\n class=\"spinner-wrapper\"\n >\n <kirby-spinner class=\"spinner\"></kirby-spinner>\n </div>\n <div class=\"content-wrapper\">\n <ng-content></ng-content>\n </div>\n</div>\n", styles: [":host{display:block;min-height:32px}.overlay-wrapper{min-height:inherit;height:100%;width:100%;position:relative}.overlay-wrapper .spinner-wrapper{height:100%;width:100%;position:absolute;z-index:1001;display:flex;background:transparent;justify-content:center;place-items:center}.overlay-wrapper .spinner-wrapper.backdrop{background-color:#f6f6f6cc}.overlay-wrapper .spinner-wrapper.hide-content{background-color:#f6f6f6}.overlay-wrapper .spinner-wrapper .spinner{width:32px;height:32px}\n"], dependencies: [{ kind: "ngmodule", type: SpinnerModule }, { kind: "component", type: i1$1.SpinnerComponent, selector: "kirby-spinner" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
59
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: LoadingOverlayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
60
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.4", type: LoadingOverlayComponent, isStandalone: true, selector: "kirby-loading-overlay", inputs: { isLoading: "isLoading", showBackdrop: "showBackdrop", hideContent: "hideContent" }, ngImport: i0, template: "<div class=\"overlay-wrapper\">\n <div\n *ngIf=\"isLoading\"\n [ngClass]=\"{\n backdrop: showBackdrop && !hideContent,\n 'hide-content': hideContent\n }\"\n class=\"spinner-wrapper\"\n >\n <kirby-spinner class=\"spinner\"></kirby-spinner>\n </div>\n <div class=\"content-wrapper\">\n <ng-content></ng-content>\n </div>\n</div>\n", styles: [":host{display:block;min-height:32px}.overlay-wrapper{min-height:inherit;height:100%;width:100%;position:relative}.overlay-wrapper .spinner-wrapper{height:100%;width:100%;position:absolute;z-index:1001;display:flex;background:transparent;justify-content:center;place-items:center}.overlay-wrapper .spinner-wrapper.backdrop{background-color:#f6f6f6cc}.overlay-wrapper .spinner-wrapper.hide-content{background-color:#f6f6f6}.overlay-wrapper .spinner-wrapper .spinner{width:32px;height:32px}\n"], dependencies: [{ kind: "ngmodule", type: SpinnerModule }, { kind: "component", type: i1$1.SpinnerComponent, selector: "kirby-spinner" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
61
61
  }
62
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoadingOverlayComponent, decorators: [{
62
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: LoadingOverlayComponent, decorators: [{
63
63
  type: Component,
64
- args: [{ standalone: true, imports: [SpinnerModule, CommonModule], selector: 'kirby-loading-overlay', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"overlay-wrapper\">\n <div\n *ngIf=\"isLoading\"\n [ngClass]=\"{\n backdrop: showBackdrop && !hideContent,\n 'hide-content': hideContent\n }\"\n class=\"spinner-wrapper\"\n >\n <kirby-spinner class=\"spinner\"></kirby-spinner>\n </div>\n <div class=\"content-wrapper\">\n <ng-content></ng-content>\n </div>\n</div>\n", styles: [":host{display:block;min-height:32px}.overlay-wrapper{min-height:inherit;height:100%;width:100%;position:relative}.overlay-wrapper .spinner-wrapper{height:100%;width:100%;position:absolute;z-index:1001;display:flex;background:transparent;justify-content:center;place-items:center}.overlay-wrapper .spinner-wrapper.backdrop{background-color:#f6f6f6cc}.overlay-wrapper .spinner-wrapper.hide-content{background-color:#f6f6f6}.overlay-wrapper .spinner-wrapper .spinner{width:32px;height:32px}\n"] }]
64
+ args: [{ imports: [SpinnerModule, CommonModule], selector: 'kirby-loading-overlay', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"overlay-wrapper\">\n <div\n *ngIf=\"isLoading\"\n [ngClass]=\"{\n backdrop: showBackdrop && !hideContent,\n 'hide-content': hideContent\n }\"\n class=\"spinner-wrapper\"\n >\n <kirby-spinner class=\"spinner\"></kirby-spinner>\n </div>\n <div class=\"content-wrapper\">\n <ng-content></ng-content>\n </div>\n</div>\n", styles: [":host{display:block;min-height:32px}.overlay-wrapper{min-height:inherit;height:100%;width:100%;position:relative}.overlay-wrapper .spinner-wrapper{height:100%;width:100%;position:absolute;z-index:1001;display:flex;background:transparent;justify-content:center;place-items:center}.overlay-wrapper .spinner-wrapper.backdrop{background-color:#f6f6f6cc}.overlay-wrapper .spinner-wrapper.hide-content{background-color:#f6f6f6}.overlay-wrapper .spinner-wrapper .spinner{width:32px;height:32px}\n"] }]
65
65
  }], propDecorators: { isLoading: [{
66
66
  type: Input
67
67
  }], showBackdrop: [{
@@ -1 +1 @@
1
- {"version":3,"file":"kirbydesign-designsystem-loading-overlay.mjs","sources":["../../loading-overlay/src/loading-overlay.service.ts","../../loading-overlay/src/loading-overlay.component.ts","../../loading-overlay/src/loading-overlay.component.html","../../loading-overlay/src/kirbydesign-designsystem-loading-overlay.ts"],"sourcesContent":["import { ComponentFactoryResolver, Injectable, Injector } from '@angular/core';\nimport { LoadingController } from '@ionic/angular/standalone';\nimport { SpinnerComponent } from '@kirbydesign/designsystem/spinner';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LoadingOverlayService {\n private ionLoading: HTMLIonLoadingElement = null;\n\n constructor(\n private loadingController: LoadingController,\n private componentFactoryResolver: ComponentFactoryResolver,\n private injector: Injector\n ) {}\n\n public async showLoadingOverlay(\n showBackdrop: boolean = true,\n hideContent: boolean = false\n ): Promise<void> {\n if (!this.ionLoading) {\n const cssClasses = ['kirby-loading-overlay'];\n\n if (hideContent) {\n cssClasses.push('kirby-loading-hide-content');\n }\n\n this.ionLoading = await this.loadingController.create({\n cssClass: cssClasses,\n duration: 0,\n message: null,\n showBackdrop: showBackdrop || hideContent,\n spinner: null,\n });\n\n const loadingWrapper = this.ionLoading.querySelector('.loading-wrapper');\n const kirbySpinner = document.createElement('kirby-spinner');\n const factory = this.componentFactoryResolver.resolveComponentFactory(SpinnerComponent);\n factory.create(this.injector, [], kirbySpinner);\n loadingWrapper.appendChild(kirbySpinner);\n\n await this.ionLoading.present();\n }\n }\n\n public async hideLoadingOverlay(): Promise<void> {\n if (this.ionLoading) {\n await this.ionLoading.dismiss();\n this.ionLoading = null;\n }\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { SpinnerModule } from '@kirbydesign/designsystem/spinner';\n\n@Component({\n standalone: true,\n imports: [SpinnerModule, CommonModule],\n selector: 'kirby-loading-overlay',\n templateUrl: './loading-overlay.component.html',\n styleUrls: ['./loading-overlay.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LoadingOverlayComponent {\n @Input() public isLoading = true;\n @Input() public showBackdrop = true;\n @Input() public hideContent = false;\n}\n","<div class=\"overlay-wrapper\">\n <div\n *ngIf=\"isLoading\"\n [ngClass]=\"{\n backdrop: showBackdrop && !hideContent,\n 'hide-content': hideContent\n }\"\n class=\"spinner-wrapper\"\n >\n <kirby-spinner class=\"spinner\"></kirby-spinner>\n </div>\n <div class=\"content-wrapper\">\n <ng-content></ng-content>\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kirbydesign-designsystem-loading-overlay.mjs","sources":["../../loading-overlay/src/loading-overlay.service.ts","../../loading-overlay/src/loading-overlay.component.ts","../../loading-overlay/src/loading-overlay.component.html","../../loading-overlay/src/kirbydesign-designsystem-loading-overlay.ts"],"sourcesContent":["import { ComponentFactoryResolver, Injectable, Injector } from '@angular/core';\nimport { LoadingController } from '@ionic/angular/standalone';\nimport { SpinnerComponent } from '@kirbydesign/designsystem/spinner';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LoadingOverlayService {\n private ionLoading: HTMLIonLoadingElement = null;\n\n constructor(\n private loadingController: LoadingController,\n private componentFactoryResolver: ComponentFactoryResolver,\n private injector: Injector\n ) {}\n\n public async showLoadingOverlay(\n showBackdrop: boolean = true,\n hideContent: boolean = false\n ): Promise<void> {\n if (!this.ionLoading) {\n const cssClasses = ['kirby-loading-overlay'];\n\n if (hideContent) {\n cssClasses.push('kirby-loading-hide-content');\n }\n\n this.ionLoading = await this.loadingController.create({\n cssClass: cssClasses,\n duration: 0,\n message: null,\n showBackdrop: showBackdrop || hideContent,\n spinner: null,\n });\n\n const loadingWrapper = this.ionLoading.querySelector('.loading-wrapper');\n const kirbySpinner = document.createElement('kirby-spinner');\n const factory = this.componentFactoryResolver.resolveComponentFactory(SpinnerComponent);\n factory.create(this.injector, [], kirbySpinner);\n loadingWrapper.appendChild(kirbySpinner);\n\n await this.ionLoading.present();\n }\n }\n\n public async hideLoadingOverlay(): Promise<void> {\n if (this.ionLoading) {\n await this.ionLoading.dismiss();\n this.ionLoading = null;\n }\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { SpinnerModule } from '@kirbydesign/designsystem/spinner';\n\n@Component({\n imports: [SpinnerModule, CommonModule],\n selector: 'kirby-loading-overlay',\n templateUrl: './loading-overlay.component.html',\n styleUrls: ['./loading-overlay.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LoadingOverlayComponent {\n @Input() public isLoading = true;\n @Input() public showBackdrop = true;\n @Input() public hideContent = false;\n}\n","<div class=\"overlay-wrapper\">\n <div\n *ngIf=\"isLoading\"\n [ngClass]=\"{\n backdrop: showBackdrop && !hideContent,\n 'hide-content': hideContent\n }\"\n class=\"spinner-wrapper\"\n >\n <kirby-spinner class=\"spinner\"></kirby-spinner>\n </div>\n <div class=\"content-wrapper\">\n <ng-content></ng-content>\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -238,12 +238,12 @@ class MenuComponent {
238
238
  ngOnDestroy() {
239
239
  this.scrollListenerDisposeFn?.();
240
240
  }
241
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MenuComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
242
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MenuComponent, isStandalone: true, selector: "kirby-menu", inputs: { isDisabled: "isDisabled", buttonSize: "buttonSize", placement: "placement", attentionLevel: "attentionLevel", triggers: "triggers", DOMPortalOutlet: "DOMPortalOutlet", portalOutletConfig: "portalOutletConfig", autoPlacement: "autoPlacement", closeOnSelect: "closeOnSelect", closeOnEscapeKey: "closeOnEscapeKey", closeOnBackdrop: "closeOnBackdrop", shift: "shift", minWidth: "minWidth" }, host: { listeners: { "keydown": "_onKeydown($event)" } }, queries: [{ propertyName: "userProvidedButton", first: true, predicate: ButtonComponent, descendants: true, read: ElementRef }, { propertyName: "kirbyItems", predicate: ItemComponent, read: ElementRef }, { propertyName: "kirbyItemComponents", predicate: ItemComponent }], viewQueries: [{ propertyName: "buttonContainerElement", first: true, predicate: ["buttonContainer"], descendants: true, read: ElementRef }, { propertyName: "defaultButtonElement", first: true, predicate: ["defaultButton"], descendants: true, read: ElementRef }, { propertyName: "floatingMenu", first: true, predicate: FloatingDirective, descendants: true }], ngImport: i0, template: "<div class=\"button-container\" #buttonContainer>\n <ng-content select=\"button[kirby-button]\"></ng-content>\n <ng-container *ngIf=\"!userProvidedButton\">\n <button\n #defaultButton\n [id]=\"triggerButtonId\"\n kirby-button\n [size]=\"buttonSize\"\n [disabled]=\"isDisabled\"\n type=\"button\"\n [attentionLevel]=\"attentionLevel\"\n aria-haspopup=\"true\"\n [attr.aria-controls]=\"menuId\"\n aria-expanded=\"false\"\n >\n <kirby-icon [name]=\"'more'\"></kirby-icon>\n </button>\n </ng-container>\n</div>\n<kirby-card\n [id]=\"menuId\"\n kirbyFloating\n [strategy]=\"'fixed'\"\n [reference]=\"buttonContainerElement\"\n [isDisabled]=\"isDisabled\"\n [triggers]=\"triggers\"\n [placement]=\"placement\"\n [DOMPortalOutlet]=\"DOMPortalOutlet\"\n [portalOutletConfig]=\"portalOutletConfig\"\n [closeOnBackdrop]=\"closeOnBackdrop\"\n [closeOnEscapeKey]=\"closeOnEscapeKey\"\n [closeOnSelect]=\"closeOnSelect\"\n [autoPlacement]=\"autoPlacement\"\n [shift]=\"shift\"\n [style.minWidth]=\"minWidth ? minWidth + 'px' : null\"\n class=\"menu-popover\"\n (keydown)=\"_onKeydown($event)\"\n (displayChanged)=\"menuVisibilityChanged($event)\"\n role=\"menu\"\n [attr.aria-labelledby]=\"triggerButtonId\"\n>\n <ng-content select=\"kirby-item\"></ng-content>\n</kirby-card>\n", styles: [":host{position:relative}.button-container{display:inline-block}kirby-card{max-height:352px;overflow-y:auto;box-shadow:0 0 5px #1c1c1c0a,0 10px 15px -10px #1c1c1c26;min-width:240px;max-width:460px}\n"], dependencies: [{ kind: "component", type: ButtonComponent, selector: "button[kirby-button],Button[kirby-button],a[kirby-button]", inputs: ["attentionLevel", "noDecoration", "themeColor", "expand", "isFloating", "size", "showIconOnly"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: FloatingDirective, selector: "[kirbyFloating]", inputs: ["reference", "placement", "strategy", "triggers", "DOMPortalOutlet", "portalOutletConfig", "isDisabled", "offset", "shift", "autoPlacement", "closeOnSelect", "closeOnEscapeKey", "closeOnBackdrop"], outputs: ["displayChanged"] }, { kind: "ngmodule", type: IconModule }, { kind: "component", type: i2.IconComponent, selector: "kirby-icon", inputs: ["size", "name"] }, { kind: "ngmodule", type: CardModule }, { kind: "component", type: i3.CardComponent, selector: "kirby-card", inputs: ["title", "subtitle", "backgroundImageUrl", "hasPadding", "sizes", "variant"] }, { kind: "ngmodule", type: ItemModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
241
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: MenuComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
242
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.4", type: MenuComponent, isStandalone: true, selector: "kirby-menu", inputs: { isDisabled: "isDisabled", buttonSize: "buttonSize", placement: "placement", attentionLevel: "attentionLevel", triggers: "triggers", DOMPortalOutlet: "DOMPortalOutlet", portalOutletConfig: "portalOutletConfig", autoPlacement: "autoPlacement", closeOnSelect: "closeOnSelect", closeOnEscapeKey: "closeOnEscapeKey", closeOnBackdrop: "closeOnBackdrop", shift: "shift", minWidth: "minWidth" }, host: { listeners: { "keydown": "_onKeydown($event)" } }, queries: [{ propertyName: "userProvidedButton", first: true, predicate: ButtonComponent, descendants: true, read: ElementRef }, { propertyName: "kirbyItems", predicate: ItemComponent, read: ElementRef }, { propertyName: "kirbyItemComponents", predicate: ItemComponent }], viewQueries: [{ propertyName: "buttonContainerElement", first: true, predicate: ["buttonContainer"], descendants: true, read: ElementRef }, { propertyName: "defaultButtonElement", first: true, predicate: ["defaultButton"], descendants: true, read: ElementRef }, { propertyName: "floatingMenu", first: true, predicate: FloatingDirective, descendants: true }], ngImport: i0, template: "<div class=\"button-container\" #buttonContainer>\n <ng-content select=\"button[kirby-button]\"></ng-content>\n <ng-container *ngIf=\"!userProvidedButton\">\n <button\n #defaultButton\n [id]=\"triggerButtonId\"\n kirby-button\n [size]=\"buttonSize\"\n [disabled]=\"isDisabled\"\n type=\"button\"\n [attentionLevel]=\"attentionLevel\"\n aria-haspopup=\"true\"\n [attr.aria-controls]=\"menuId\"\n aria-expanded=\"false\"\n >\n <kirby-icon [name]=\"'more'\"></kirby-icon>\n </button>\n </ng-container>\n</div>\n<kirby-card\n [id]=\"menuId\"\n kirbyFloating\n [strategy]=\"'fixed'\"\n [reference]=\"buttonContainerElement\"\n [isDisabled]=\"isDisabled\"\n [triggers]=\"triggers\"\n [placement]=\"placement\"\n [DOMPortalOutlet]=\"DOMPortalOutlet\"\n [portalOutletConfig]=\"portalOutletConfig\"\n [closeOnBackdrop]=\"closeOnBackdrop\"\n [closeOnEscapeKey]=\"closeOnEscapeKey\"\n [closeOnSelect]=\"closeOnSelect\"\n [autoPlacement]=\"autoPlacement\"\n [shift]=\"shift\"\n [style.minWidth]=\"minWidth ? minWidth + 'px' : null\"\n class=\"menu-popover\"\n (keydown)=\"_onKeydown($event)\"\n (displayChanged)=\"menuVisibilityChanged($event)\"\n role=\"menu\"\n [attr.aria-labelledby]=\"triggerButtonId\"\n>\n <ng-content select=\"kirby-item\"></ng-content>\n</kirby-card>\n", styles: [":host{position:relative}.button-container{display:inline-block}kirby-card{max-height:352px;overflow-y:auto;box-shadow:0 0 5px #1c1c1c0a,0 10px 15px -10px #1c1c1c26;min-width:240px;max-width:460px}\n"], dependencies: [{ kind: "component", type: ButtonComponent, selector: "button[kirby-button],Button[kirby-button],a[kirby-button]", inputs: ["attentionLevel", "noDecoration", "themeColor", "expand", "isFloating", "size", "showIconOnly"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: FloatingDirective, selector: "[kirbyFloating]", inputs: ["reference", "placement", "strategy", "triggers", "DOMPortalOutlet", "portalOutletConfig", "isDisabled", "offset", "shift", "autoPlacement", "closeOnSelect", "closeOnEscapeKey", "closeOnBackdrop"], outputs: ["displayChanged"] }, { kind: "ngmodule", type: IconModule }, { kind: "component", type: i2.IconComponent, selector: "kirby-icon", inputs: ["size", "name"] }, { kind: "ngmodule", type: CardModule }, { kind: "component", type: i3.CardComponent, selector: "kirby-card", inputs: ["title", "subtitle", "backgroundImageUrl", "hasPadding", "sizes", "variant"] }, { kind: "ngmodule", type: ItemModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
243
243
  }
244
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MenuComponent, decorators: [{
244
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: MenuComponent, decorators: [{
245
245
  type: Component,
246
- args: [{ selector: 'kirby-menu', standalone: true, imports: [ButtonComponent, CommonModule, FloatingDirective, IconModule, CardModule, ItemModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"button-container\" #buttonContainer>\n <ng-content select=\"button[kirby-button]\"></ng-content>\n <ng-container *ngIf=\"!userProvidedButton\">\n <button\n #defaultButton\n [id]=\"triggerButtonId\"\n kirby-button\n [size]=\"buttonSize\"\n [disabled]=\"isDisabled\"\n type=\"button\"\n [attentionLevel]=\"attentionLevel\"\n aria-haspopup=\"true\"\n [attr.aria-controls]=\"menuId\"\n aria-expanded=\"false\"\n >\n <kirby-icon [name]=\"'more'\"></kirby-icon>\n </button>\n </ng-container>\n</div>\n<kirby-card\n [id]=\"menuId\"\n kirbyFloating\n [strategy]=\"'fixed'\"\n [reference]=\"buttonContainerElement\"\n [isDisabled]=\"isDisabled\"\n [triggers]=\"triggers\"\n [placement]=\"placement\"\n [DOMPortalOutlet]=\"DOMPortalOutlet\"\n [portalOutletConfig]=\"portalOutletConfig\"\n [closeOnBackdrop]=\"closeOnBackdrop\"\n [closeOnEscapeKey]=\"closeOnEscapeKey\"\n [closeOnSelect]=\"closeOnSelect\"\n [autoPlacement]=\"autoPlacement\"\n [shift]=\"shift\"\n [style.minWidth]=\"minWidth ? minWidth + 'px' : null\"\n class=\"menu-popover\"\n (keydown)=\"_onKeydown($event)\"\n (displayChanged)=\"menuVisibilityChanged($event)\"\n role=\"menu\"\n [attr.aria-labelledby]=\"triggerButtonId\"\n>\n <ng-content select=\"kirby-item\"></ng-content>\n</kirby-card>\n", styles: [":host{position:relative}.button-container{display:inline-block}kirby-card{max-height:352px;overflow-y:auto;box-shadow:0 0 5px #1c1c1c0a,0 10px 15px -10px #1c1c1c26;min-width:240px;max-width:460px}\n"] }]
246
+ args: [{ selector: 'kirby-menu', imports: [ButtonComponent, CommonModule, FloatingDirective, IconModule, CardModule, ItemModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"button-container\" #buttonContainer>\n <ng-content select=\"button[kirby-button]\"></ng-content>\n <ng-container *ngIf=\"!userProvidedButton\">\n <button\n #defaultButton\n [id]=\"triggerButtonId\"\n kirby-button\n [size]=\"buttonSize\"\n [disabled]=\"isDisabled\"\n type=\"button\"\n [attentionLevel]=\"attentionLevel\"\n aria-haspopup=\"true\"\n [attr.aria-controls]=\"menuId\"\n aria-expanded=\"false\"\n >\n <kirby-icon [name]=\"'more'\"></kirby-icon>\n </button>\n </ng-container>\n</div>\n<kirby-card\n [id]=\"menuId\"\n kirbyFloating\n [strategy]=\"'fixed'\"\n [reference]=\"buttonContainerElement\"\n [isDisabled]=\"isDisabled\"\n [triggers]=\"triggers\"\n [placement]=\"placement\"\n [DOMPortalOutlet]=\"DOMPortalOutlet\"\n [portalOutletConfig]=\"portalOutletConfig\"\n [closeOnBackdrop]=\"closeOnBackdrop\"\n [closeOnEscapeKey]=\"closeOnEscapeKey\"\n [closeOnSelect]=\"closeOnSelect\"\n [autoPlacement]=\"autoPlacement\"\n [shift]=\"shift\"\n [style.minWidth]=\"minWidth ? minWidth + 'px' : null\"\n class=\"menu-popover\"\n (keydown)=\"_onKeydown($event)\"\n (displayChanged)=\"menuVisibilityChanged($event)\"\n role=\"menu\"\n [attr.aria-labelledby]=\"triggerButtonId\"\n>\n <ng-content select=\"kirby-item\"></ng-content>\n</kirby-card>\n", styles: [":host{position:relative}.button-container{display:inline-block}kirby-card{max-height:352px;overflow-y:auto;box-shadow:0 0 5px #1c1c1c0a,0 10px 15px -10px #1c1c1c26;min-width:240px;max-width:460px}\n"] }]
247
247
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Renderer2 }], propDecorators: { isDisabled: [{
248
248
  type: Input
249
249
  }], buttonSize: [{
@@ -1 +1 @@
1
- {"version":3,"file":"kirbydesign-designsystem-menu.mjs","sources":["../../menu/src/menu.component.ts","../../menu/src/menu.component.html","../../menu/src/kirbydesign-designsystem-menu.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n HostListener,\n Input,\n NgZone,\n OnDestroy,\n QueryList,\n Renderer2,\n ViewChild,\n} from '@angular/core';\nimport { Placement } from '@floating-ui/dom';\n\nimport { ItemComponent, ItemModule } from '@kirbydesign/designsystem/item';\nimport { CardModule } from '@kirbydesign/designsystem/card';\nimport { IconModule } from '@kirbydesign/designsystem/icon';\nimport { AttentionLevel, ButtonComponent, ButtonSize } from '@kirbydesign/designsystem/button';\nimport {\n FloatingDirective,\n FloatingOffset,\n PortalOutletConfig,\n TriggerEvent,\n} from '@kirbydesign/designsystem/shared/floating';\nimport { EventListenerDisposeFn } from '@kirbydesign/designsystem/types';\nimport { UniqueIdGenerator } from '@kirbydesign/designsystem/helpers';\n\n@Component({\n selector: 'kirby-menu',\n standalone: true,\n imports: [ButtonComponent, CommonModule, FloatingDirective, IconModule, CardModule, ItemModule],\n templateUrl: './menu.component.html',\n styleUrls: ['./menu.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MenuComponent implements AfterViewInit, AfterContentInit, OnDestroy {\n readonly menuId: string = UniqueIdGenerator.scopedTo('kirby-menu').next();\n triggerButtonId: string = UniqueIdGenerator.scopedTo('kirby-menu-trigger-button').next();\n\n constructor(\n private cdr: ChangeDetectorRef,\n private elementRef: ElementRef<HTMLElement>,\n private zone: NgZone,\n private renderer: Renderer2\n ) {}\n\n @Input() public isDisabled: boolean = false;\n\n @Input() public buttonSize: ButtonSize = ButtonSize.MD;\n\n @Input() public placement: Placement = 'bottom-start';\n\n @Input() public attentionLevel: AttentionLevel = '3';\n\n @Input() public triggers: Array<TriggerEvent> = ['click'];\n\n @Input() public DOMPortalOutlet: HTMLElement = this.elementRef.nativeElement.ownerDocument.body;\n\n @Input() public portalOutletConfig: PortalOutletConfig | undefined;\n\n @Input() public autoPlacement: boolean = false;\n\n @Input() public closeOnSelect: boolean = true;\n\n @Input() public closeOnEscapeKey: boolean = true;\n\n @Input() public closeOnBackdrop: boolean = true;\n\n @Input() public shift: boolean = true;\n\n /**\n * The minimum width of the menu. If not set, the default width is 240px\n */\n @Input() public minWidth: number;\n\n @ViewChild('buttonContainer', { read: ElementRef })\n public buttonContainerElement: ElementRef<HTMLElement> | undefined;\n\n @ViewChild('defaultButton', { read: ElementRef })\n public defaultButtonElement: ElementRef<HTMLButtonElement> | undefined;\n\n @ContentChild(ButtonComponent, { read: ElementRef }) public userProvidedButton:\n | ElementRef<HTMLButtonElement>\n | undefined;\n\n @ViewChild(FloatingDirective)\n private floatingMenu: FloatingDirective;\n\n @ContentChildren(ItemComponent, { read: ElementRef }) public kirbyItems: QueryList<\n ElementRef<HTMLElement>\n >;\n\n @ContentChildren(ItemComponent) public kirbyItemComponents: QueryList<ItemComponent>;\n\n public floatingMenuIsShown: boolean = false;\n public FloatingOffset: typeof FloatingOffset = FloatingOffset;\n private scrollListenerDisposeFn: EventListenerDisposeFn;\n private focusedIndex = -1;\n\n @HostListener('keydown', ['$event'])\n _onKeydown(event: KeyboardEvent) {\n if (this.kirbyItems.length === 0) {\n console.warn('[Kirby] No items found within menu');\n return;\n }\n if (this.floatingMenuIsShown) {\n this.handleKeyDownForOpenedMenu(event);\n } else {\n this.handleKeyDownForClosedMenu(event);\n }\n }\n\n private preventDefaultAndStopImmediatePropagation(event: KeyboardEvent) {\n event.stopImmediatePropagation();\n event.preventDefault();\n }\n\n private getFirstInteractiveElement(el: HTMLIonItemElement) {\n return el.querySelector<HTMLIonToggleElement | HTMLIonRadioElement | HTMLIonCheckboxElement>(\n 'ion-toggle:not([disabled]), ion-checkbox:not([disabled]), ion-radio:not([disabled])'\n );\n }\n\n private handleKeyDownForClosedMenu(event: KeyboardEvent) {\n const key = event.key;\n switch (key) {\n case ' ':\n case 'Enter':\n case 'ArrowDown':\n this.preventDefaultAndStopImmediatePropagation(event);\n this.focusedIndex = 0;\n this.floatingMenu.show();\n this.focusItem();\n break;\n case 'ArrowUp':\n this.preventDefaultAndStopImmediatePropagation(event);\n this.focusedIndex = this.kirbyItems.length - 1;\n this.floatingMenu.show();\n this.focusItem();\n break;\n }\n }\n\n private isPrintableCharacter(key: string) {\n return key.length === 1 && key.match(/\\S/);\n }\n\n private handleKeyDownForOpenedMenu(event: KeyboardEvent) {\n const key = event.key;\n\n switch (key) {\n case 'ArrowDown':\n this.preventDefaultAndStopImmediatePropagation(event);\n if (this.focusedIndex === this.kirbyItems.length - 1) {\n this.focusedIndex = 0;\n } else {\n this.focusedIndex++;\n }\n this.focusItem();\n break;\n case 'ArrowUp':\n this.preventDefaultAndStopImmediatePropagation(event);\n if (this.focusedIndex === 0) {\n this.focusedIndex = this.kirbyItems.length - 1;\n } else {\n this.focusedIndex--;\n }\n this.focusItem();\n break;\n case 'Home': {\n this.preventDefaultAndStopImmediatePropagation(event);\n if (this.focusedIndex > 0) {\n this.focusedIndex = 0;\n this.focusItem();\n }\n break;\n }\n case 'End': {\n this.preventDefaultAndStopImmediatePropagation(event);\n if (this.focusedIndex < this.kirbyItems.length - 1) {\n this.focusedIndex = this.kirbyItems.length - 1;\n this.focusItem();\n }\n break;\n }\n case 'Escape':\n this.preventDefaultAndStopImmediatePropagation(event);\n if (this.closeOnEscapeKey) {\n this.floatingMenu.hide();\n }\n break;\n case 'Tab':\n this.floatingMenu.hide();\n break;\n default: {\n if (this.isPrintableCharacter(key)) {\n this.preventDefaultAndStopImmediatePropagation(event);\n const foundItemIndex = this.getIndexOfItemByFirstCharacter(key);\n if (foundItemIndex > -1) {\n this.focusedIndex = foundItemIndex;\n this.focusItem();\n }\n }\n }\n }\n }\n\n private getIndexOfItemByFirstCharacter(char: string) {\n return this.getIndexByFirstMatchingStartString(\n char,\n this.kirbyItems.map((item) => item.nativeElement.innerText),\n this.focusedIndex + 1\n );\n }\n\n private getIndexByFirstMatchingStartString(\n searchString: string,\n words: string[],\n startIndex: number\n ): number {\n searchString = searchString.toLowerCase();\n\n const wordsStartingWithMatchString = words\n .map((word, index) => {\n return { word: word.toLowerCase(), index };\n })\n .filter((match) => match.word.startsWith(searchString));\n\n if (wordsStartingWithMatchString.length === 0) {\n return -1;\n }\n\n const firstWordStartingWithChar = wordsStartingWithMatchString[0];\n const nextWordStartingWithChar = wordsStartingWithMatchString.find(\n (wordAndIndex) => wordAndIndex.index >= startIndex\n );\n\n return nextWordStartingWithChar?.index ?? firstWordStartingWithChar.index;\n }\n\n focusItem() {\n const itemToBeFocused = this.kirbyItems.get(this.focusedIndex);\n const ionItem = itemToBeFocused.nativeElement.querySelector('ion-item');\n\n // Look for interactive element within ion-item like toggle or checkbox and set focus if found\n const firstInteractiveElementWithinItem = this.getFirstInteractiveElement(ionItem);\n if (typeof firstInteractiveElementWithinItem?.['setFocus'] === 'function') {\n firstInteractiveElementWithinItem['setFocus']();\n } else {\n this.focusSelectableItem(ionItem);\n }\n }\n\n private focusSelectableItem(ionItem: HTMLIonItemElement) {\n const nativeButton: HTMLButtonElement =\n ionItem.shadowRoot.querySelector('button:not([disabled])');\n nativeButton?.focus();\n }\n\n getTriggerButton(): HTMLButtonElement {\n return (this.userProvidedButton ?? this.defaultButtonElement).nativeElement;\n }\n\n public ngAfterViewInit(): void {\n this.cdr.detectChanges(); // Sets the updated reference for kirby-floating\n\n this.zone.runOutsideAngular(() => {\n /*\n * Listen for ionScroll outside of Angular's change detection to\n * avoid a change detection cycle for every scroll-event fired\n */\n this.scrollListenerDisposeFn = this.renderer.listen(document, 'ionScroll', () => {\n this.floatingMenu.hide();\n });\n });\n }\n\n ngAfterContentInit(): void {\n this.setRoleAttributeForAllItems();\n this.setUserProvidedButtonAriaAttributes();\n this.ensureSelectableOnItems();\n }\n\n ensureSelectableOnItems() {\n this.kirbyItemComponents.forEach((itemComponent) => {\n if (itemComponent.selectable === undefined) {\n itemComponent.selectable = true;\n }\n });\n }\n\n private setRoleAttributeForAllItems() {\n this.kirbyItems.forEach((item) => {\n this.setRoleAttributeForItem(item.nativeElement);\n });\n }\n\n private setRoleAttributeForItem(item: HTMLElement) {\n let menuItemRole = 'menuitem';\n if (item.matches(':has(kirby-toggle, kirby-checkbox)')) {\n menuItemRole = 'menuitemcheckbox';\n } else if (item.matches(':has(kirby-radio)')) {\n menuItemRole = 'menuitemradio';\n }\n this.renderer.setAttribute(item, 'role', menuItemRole);\n }\n\n menuVisibilityChanged(menuIsShown: boolean) {\n this.floatingMenuIsShown = menuIsShown;\n this.renderer.setAttribute(this.getTriggerButton(), 'aria-expanded', menuIsShown.toString());\n if (!menuIsShown) {\n this.focusedIndex = -1;\n this.getTriggerButton().focus();\n }\n }\n\n private setUserProvidedButtonAriaAttributes() {\n if (!this.userProvidedButton) return;\n\n const button = this.userProvidedButton.nativeElement;\n if (button.id) {\n this.triggerButtonId = button.id;\n } else {\n this.renderer.setAttribute(button, 'id', this.triggerButtonId);\n }\n if (!button.getAttribute('aria-controls')) {\n this.renderer.setAttribute(button, 'aria-controls', this.menuId);\n }\n if (!button.getAttribute('aria-haspopup')) {\n this.renderer.setAttribute(button, 'aria-haspopup', 'true');\n }\n }\n\n ngOnDestroy(): void {\n this.scrollListenerDisposeFn?.();\n }\n}\n","<div class=\"button-container\" #buttonContainer>\n <ng-content select=\"button[kirby-button]\"></ng-content>\n <ng-container *ngIf=\"!userProvidedButton\">\n <button\n #defaultButton\n [id]=\"triggerButtonId\"\n kirby-button\n [size]=\"buttonSize\"\n [disabled]=\"isDisabled\"\n type=\"button\"\n [attentionLevel]=\"attentionLevel\"\n aria-haspopup=\"true\"\n [attr.aria-controls]=\"menuId\"\n aria-expanded=\"false\"\n >\n <kirby-icon [name]=\"'more'\"></kirby-icon>\n </button>\n </ng-container>\n</div>\n<kirby-card\n [id]=\"menuId\"\n kirbyFloating\n [strategy]=\"'fixed'\"\n [reference]=\"buttonContainerElement\"\n [isDisabled]=\"isDisabled\"\n [triggers]=\"triggers\"\n [placement]=\"placement\"\n [DOMPortalOutlet]=\"DOMPortalOutlet\"\n [portalOutletConfig]=\"portalOutletConfig\"\n [closeOnBackdrop]=\"closeOnBackdrop\"\n [closeOnEscapeKey]=\"closeOnEscapeKey\"\n [closeOnSelect]=\"closeOnSelect\"\n [autoPlacement]=\"autoPlacement\"\n [shift]=\"shift\"\n [style.minWidth]=\"minWidth ? minWidth + 'px' : null\"\n class=\"menu-popover\"\n (keydown)=\"_onKeydown($event)\"\n (displayChanged)=\"menuVisibilityChanged($event)\"\n role=\"menu\"\n [attr.aria-labelledby]=\"triggerButtonId\"\n>\n <ng-content select=\"kirby-item\"></ng-content>\n</kirby-card>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kirbydesign-designsystem-menu.mjs","sources":["../../menu/src/menu.component.ts","../../menu/src/menu.component.html","../../menu/src/kirbydesign-designsystem-menu.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n HostListener,\n Input,\n NgZone,\n OnDestroy,\n QueryList,\n Renderer2,\n ViewChild,\n} from '@angular/core';\nimport { Placement } from '@floating-ui/dom';\n\nimport { ItemComponent, ItemModule } from '@kirbydesign/designsystem/item';\nimport { CardModule } from '@kirbydesign/designsystem/card';\nimport { IconModule } from '@kirbydesign/designsystem/icon';\nimport { AttentionLevel, ButtonComponent, ButtonSize } from '@kirbydesign/designsystem/button';\nimport {\n FloatingDirective,\n FloatingOffset,\n PortalOutletConfig,\n TriggerEvent,\n} from '@kirbydesign/designsystem/shared/floating';\nimport { EventListenerDisposeFn } from '@kirbydesign/designsystem/types';\nimport { UniqueIdGenerator } from '@kirbydesign/designsystem/helpers';\n\n@Component({\n selector: 'kirby-menu',\n imports: [ButtonComponent, CommonModule, FloatingDirective, IconModule, CardModule, ItemModule],\n templateUrl: './menu.component.html',\n styleUrls: ['./menu.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MenuComponent implements AfterViewInit, AfterContentInit, OnDestroy {\n readonly menuId: string = UniqueIdGenerator.scopedTo('kirby-menu').next();\n triggerButtonId: string = UniqueIdGenerator.scopedTo('kirby-menu-trigger-button').next();\n\n constructor(\n private cdr: ChangeDetectorRef,\n private elementRef: ElementRef<HTMLElement>,\n private zone: NgZone,\n private renderer: Renderer2\n ) {}\n\n @Input() public isDisabled: boolean = false;\n\n @Input() public buttonSize: ButtonSize = ButtonSize.MD;\n\n @Input() public placement: Placement = 'bottom-start';\n\n @Input() public attentionLevel: AttentionLevel = '3';\n\n @Input() public triggers: Array<TriggerEvent> = ['click'];\n\n @Input() public DOMPortalOutlet: HTMLElement = this.elementRef.nativeElement.ownerDocument.body;\n\n @Input() public portalOutletConfig: PortalOutletConfig | undefined;\n\n @Input() public autoPlacement: boolean = false;\n\n @Input() public closeOnSelect: boolean = true;\n\n @Input() public closeOnEscapeKey: boolean = true;\n\n @Input() public closeOnBackdrop: boolean = true;\n\n @Input() public shift: boolean = true;\n\n /**\n * The minimum width of the menu. If not set, the default width is 240px\n */\n @Input() public minWidth: number;\n\n @ViewChild('buttonContainer', { read: ElementRef })\n public buttonContainerElement: ElementRef<HTMLElement> | undefined;\n\n @ViewChild('defaultButton', { read: ElementRef })\n public defaultButtonElement: ElementRef<HTMLButtonElement> | undefined;\n\n @ContentChild(ButtonComponent, { read: ElementRef }) public userProvidedButton:\n | ElementRef<HTMLButtonElement>\n | undefined;\n\n @ViewChild(FloatingDirective)\n private floatingMenu: FloatingDirective;\n\n @ContentChildren(ItemComponent, { read: ElementRef }) public kirbyItems: QueryList<\n ElementRef<HTMLElement>\n >;\n\n @ContentChildren(ItemComponent) public kirbyItemComponents: QueryList<ItemComponent>;\n\n public floatingMenuIsShown: boolean = false;\n public FloatingOffset: typeof FloatingOffset = FloatingOffset;\n private scrollListenerDisposeFn: EventListenerDisposeFn;\n private focusedIndex = -1;\n\n @HostListener('keydown', ['$event'])\n _onKeydown(event: KeyboardEvent) {\n if (this.kirbyItems.length === 0) {\n console.warn('[Kirby] No items found within menu');\n return;\n }\n if (this.floatingMenuIsShown) {\n this.handleKeyDownForOpenedMenu(event);\n } else {\n this.handleKeyDownForClosedMenu(event);\n }\n }\n\n private preventDefaultAndStopImmediatePropagation(event: KeyboardEvent) {\n event.stopImmediatePropagation();\n event.preventDefault();\n }\n\n private getFirstInteractiveElement(el: HTMLIonItemElement) {\n return el.querySelector<HTMLIonToggleElement | HTMLIonRadioElement | HTMLIonCheckboxElement>(\n 'ion-toggle:not([disabled]), ion-checkbox:not([disabled]), ion-radio:not([disabled])'\n );\n }\n\n private handleKeyDownForClosedMenu(event: KeyboardEvent) {\n const key = event.key;\n switch (key) {\n case ' ':\n case 'Enter':\n case 'ArrowDown':\n this.preventDefaultAndStopImmediatePropagation(event);\n this.focusedIndex = 0;\n this.floatingMenu.show();\n this.focusItem();\n break;\n case 'ArrowUp':\n this.preventDefaultAndStopImmediatePropagation(event);\n this.focusedIndex = this.kirbyItems.length - 1;\n this.floatingMenu.show();\n this.focusItem();\n break;\n }\n }\n\n private isPrintableCharacter(key: string) {\n return key.length === 1 && key.match(/\\S/);\n }\n\n private handleKeyDownForOpenedMenu(event: KeyboardEvent) {\n const key = event.key;\n\n switch (key) {\n case 'ArrowDown':\n this.preventDefaultAndStopImmediatePropagation(event);\n if (this.focusedIndex === this.kirbyItems.length - 1) {\n this.focusedIndex = 0;\n } else {\n this.focusedIndex++;\n }\n this.focusItem();\n break;\n case 'ArrowUp':\n this.preventDefaultAndStopImmediatePropagation(event);\n if (this.focusedIndex === 0) {\n this.focusedIndex = this.kirbyItems.length - 1;\n } else {\n this.focusedIndex--;\n }\n this.focusItem();\n break;\n case 'Home': {\n this.preventDefaultAndStopImmediatePropagation(event);\n if (this.focusedIndex > 0) {\n this.focusedIndex = 0;\n this.focusItem();\n }\n break;\n }\n case 'End': {\n this.preventDefaultAndStopImmediatePropagation(event);\n if (this.focusedIndex < this.kirbyItems.length - 1) {\n this.focusedIndex = this.kirbyItems.length - 1;\n this.focusItem();\n }\n break;\n }\n case 'Escape':\n this.preventDefaultAndStopImmediatePropagation(event);\n if (this.closeOnEscapeKey) {\n this.floatingMenu.hide();\n }\n break;\n case 'Tab':\n this.floatingMenu.hide();\n break;\n default: {\n if (this.isPrintableCharacter(key)) {\n this.preventDefaultAndStopImmediatePropagation(event);\n const foundItemIndex = this.getIndexOfItemByFirstCharacter(key);\n if (foundItemIndex > -1) {\n this.focusedIndex = foundItemIndex;\n this.focusItem();\n }\n }\n }\n }\n }\n\n private getIndexOfItemByFirstCharacter(char: string) {\n return this.getIndexByFirstMatchingStartString(\n char,\n this.kirbyItems.map((item) => item.nativeElement.innerText),\n this.focusedIndex + 1\n );\n }\n\n private getIndexByFirstMatchingStartString(\n searchString: string,\n words: string[],\n startIndex: number\n ): number {\n searchString = searchString.toLowerCase();\n\n const wordsStartingWithMatchString = words\n .map((word, index) => {\n return { word: word.toLowerCase(), index };\n })\n .filter((match) => match.word.startsWith(searchString));\n\n if (wordsStartingWithMatchString.length === 0) {\n return -1;\n }\n\n const firstWordStartingWithChar = wordsStartingWithMatchString[0];\n const nextWordStartingWithChar = wordsStartingWithMatchString.find(\n (wordAndIndex) => wordAndIndex.index >= startIndex\n );\n\n return nextWordStartingWithChar?.index ?? firstWordStartingWithChar.index;\n }\n\n focusItem() {\n const itemToBeFocused = this.kirbyItems.get(this.focusedIndex);\n const ionItem = itemToBeFocused.nativeElement.querySelector('ion-item');\n\n // Look for interactive element within ion-item like toggle or checkbox and set focus if found\n const firstInteractiveElementWithinItem = this.getFirstInteractiveElement(ionItem);\n if (typeof firstInteractiveElementWithinItem?.['setFocus'] === 'function') {\n firstInteractiveElementWithinItem['setFocus']();\n } else {\n this.focusSelectableItem(ionItem);\n }\n }\n\n private focusSelectableItem(ionItem: HTMLIonItemElement) {\n const nativeButton: HTMLButtonElement =\n ionItem.shadowRoot.querySelector('button:not([disabled])');\n nativeButton?.focus();\n }\n\n getTriggerButton(): HTMLButtonElement {\n return (this.userProvidedButton ?? this.defaultButtonElement).nativeElement;\n }\n\n public ngAfterViewInit(): void {\n this.cdr.detectChanges(); // Sets the updated reference for kirby-floating\n\n this.zone.runOutsideAngular(() => {\n /*\n * Listen for ionScroll outside of Angular's change detection to\n * avoid a change detection cycle for every scroll-event fired\n */\n this.scrollListenerDisposeFn = this.renderer.listen(document, 'ionScroll', () => {\n this.floatingMenu.hide();\n });\n });\n }\n\n ngAfterContentInit(): void {\n this.setRoleAttributeForAllItems();\n this.setUserProvidedButtonAriaAttributes();\n this.ensureSelectableOnItems();\n }\n\n ensureSelectableOnItems() {\n this.kirbyItemComponents.forEach((itemComponent) => {\n if (itemComponent.selectable === undefined) {\n itemComponent.selectable = true;\n }\n });\n }\n\n private setRoleAttributeForAllItems() {\n this.kirbyItems.forEach((item) => {\n this.setRoleAttributeForItem(item.nativeElement);\n });\n }\n\n private setRoleAttributeForItem(item: HTMLElement) {\n let menuItemRole = 'menuitem';\n if (item.matches(':has(kirby-toggle, kirby-checkbox)')) {\n menuItemRole = 'menuitemcheckbox';\n } else if (item.matches(':has(kirby-radio)')) {\n menuItemRole = 'menuitemradio';\n }\n this.renderer.setAttribute(item, 'role', menuItemRole);\n }\n\n menuVisibilityChanged(menuIsShown: boolean) {\n this.floatingMenuIsShown = menuIsShown;\n this.renderer.setAttribute(this.getTriggerButton(), 'aria-expanded', menuIsShown.toString());\n if (!menuIsShown) {\n this.focusedIndex = -1;\n this.getTriggerButton().focus();\n }\n }\n\n private setUserProvidedButtonAriaAttributes() {\n if (!this.userProvidedButton) return;\n\n const button = this.userProvidedButton.nativeElement;\n if (button.id) {\n this.triggerButtonId = button.id;\n } else {\n this.renderer.setAttribute(button, 'id', this.triggerButtonId);\n }\n if (!button.getAttribute('aria-controls')) {\n this.renderer.setAttribute(button, 'aria-controls', this.menuId);\n }\n if (!button.getAttribute('aria-haspopup')) {\n this.renderer.setAttribute(button, 'aria-haspopup', 'true');\n }\n }\n\n ngOnDestroy(): void {\n this.scrollListenerDisposeFn?.();\n }\n}\n","<div class=\"button-container\" #buttonContainer>\n <ng-content select=\"button[kirby-button]\"></ng-content>\n <ng-container *ngIf=\"!userProvidedButton\">\n <button\n #defaultButton\n [id]=\"triggerButtonId\"\n kirby-button\n [size]=\"buttonSize\"\n [disabled]=\"isDisabled\"\n type=\"button\"\n [attentionLevel]=\"attentionLevel\"\n aria-haspopup=\"true\"\n [attr.aria-controls]=\"menuId\"\n aria-expanded=\"false\"\n >\n <kirby-icon [name]=\"'more'\"></kirby-icon>\n </button>\n </ng-container>\n</div>\n<kirby-card\n [id]=\"menuId\"\n kirbyFloating\n [strategy]=\"'fixed'\"\n [reference]=\"buttonContainerElement\"\n [isDisabled]=\"isDisabled\"\n [triggers]=\"triggers\"\n [placement]=\"placement\"\n [DOMPortalOutlet]=\"DOMPortalOutlet\"\n [portalOutletConfig]=\"portalOutletConfig\"\n [closeOnBackdrop]=\"closeOnBackdrop\"\n [closeOnEscapeKey]=\"closeOnEscapeKey\"\n [closeOnSelect]=\"closeOnSelect\"\n [autoPlacement]=\"autoPlacement\"\n [shift]=\"shift\"\n [style.minWidth]=\"minWidth ? minWidth + 'px' : null\"\n class=\"menu-popover\"\n (keydown)=\"_onKeydown($event)\"\n (displayChanged)=\"menuVisibilityChanged($event)\"\n role=\"menu\"\n [attr.aria-labelledby]=\"triggerButtonId\"\n>\n <ng-content select=\"kirby-item\"></ng-content>\n</kirby-card>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}