@kirbydesign/designsystem 11.11.2 → 12.0.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 (290) hide show
  1. package/fesm2022/kirbydesign-designsystem-accordion.mjs +246 -135
  2. package/fesm2022/kirbydesign-designsystem-accordion.mjs.map +1 -1
  3. package/fesm2022/kirbydesign-designsystem-action-group.mjs +229 -134
  4. package/fesm2022/kirbydesign-designsystem-action-group.mjs.map +1 -1
  5. package/fesm2022/kirbydesign-designsystem-avatar.mjs +98 -55
  6. package/fesm2022/kirbydesign-designsystem-avatar.mjs.map +1 -1
  7. package/fesm2022/kirbydesign-designsystem-badge.mjs +85 -42
  8. package/fesm2022/kirbydesign-designsystem-badge.mjs.map +1 -1
  9. package/fesm2022/kirbydesign-designsystem-button.mjs +203 -170
  10. package/fesm2022/kirbydesign-designsystem-button.mjs.map +1 -1
  11. package/fesm2022/kirbydesign-designsystem-calendar.mjs +524 -516
  12. package/fesm2022/kirbydesign-designsystem-calendar.mjs.map +1 -1
  13. package/fesm2022/kirbydesign-designsystem-card.mjs +407 -205
  14. package/fesm2022/kirbydesign-designsystem-card.mjs.map +1 -1
  15. package/fesm2022/kirbydesign-designsystem-chart.mjs +1388 -1469
  16. package/fesm2022/kirbydesign-designsystem-chart.mjs.map +1 -1
  17. package/fesm2022/kirbydesign-designsystem-checkbox.mjs +215 -176
  18. package/fesm2022/kirbydesign-designsystem-checkbox.mjs.map +1 -1
  19. package/fesm2022/kirbydesign-designsystem-config.mjs +50 -96
  20. package/fesm2022/kirbydesign-designsystem-config.mjs.map +1 -1
  21. package/fesm2022/kirbydesign-designsystem-data-table.mjs +180 -83
  22. package/fesm2022/kirbydesign-designsystem-data-table.mjs.map +1 -1
  23. package/fesm2022/kirbydesign-designsystem-divider.mjs +46 -19
  24. package/fesm2022/kirbydesign-designsystem-divider.mjs.map +1 -1
  25. package/fesm2022/kirbydesign-designsystem-dropdown.mjs +878 -752
  26. package/fesm2022/kirbydesign-designsystem-dropdown.mjs.map +1 -1
  27. package/fesm2022/kirbydesign-designsystem-empty-state.mjs +164 -91
  28. package/fesm2022/kirbydesign-designsystem-empty-state.mjs.map +1 -1
  29. package/fesm2022/kirbydesign-designsystem-fab-sheet.mjs +213 -85
  30. package/fesm2022/kirbydesign-designsystem-fab-sheet.mjs.map +1 -1
  31. package/fesm2022/kirbydesign-designsystem-flag.mjs +67 -33
  32. package/fesm2022/kirbydesign-designsystem-flag.mjs.map +1 -1
  33. package/fesm2022/kirbydesign-designsystem-form-field.mjs +1260 -891
  34. package/fesm2022/kirbydesign-designsystem-form-field.mjs.map +1 -1
  35. package/fesm2022/kirbydesign-designsystem-gesture.mjs +38 -23
  36. package/fesm2022/kirbydesign-designsystem-gesture.mjs.map +1 -1
  37. package/fesm2022/kirbydesign-designsystem-header.mjs +422 -182
  38. package/fesm2022/kirbydesign-designsystem-header.mjs.map +1 -1
  39. package/fesm2022/kirbydesign-designsystem-helpers-scss.mjs +16 -14
  40. package/fesm2022/kirbydesign-designsystem-helpers-scss.mjs.map +1 -1
  41. package/fesm2022/kirbydesign-designsystem-helpers.mjs +251 -361
  42. package/fesm2022/kirbydesign-designsystem-helpers.mjs.map +1 -1
  43. package/fesm2022/kirbydesign-designsystem-icon.mjs +881 -296
  44. package/fesm2022/kirbydesign-designsystem-icon.mjs.map +1 -1
  45. package/fesm2022/kirbydesign-designsystem-item-group.mjs +52 -23
  46. package/fesm2022/kirbydesign-designsystem-item-group.mjs.map +1 -1
  47. package/fesm2022/kirbydesign-designsystem-item-sliding.mjs +147 -43
  48. package/fesm2022/kirbydesign-designsystem-item-sliding.mjs.map +1 -1
  49. package/fesm2022/kirbydesign-designsystem-item.mjs +395 -151
  50. package/fesm2022/kirbydesign-designsystem-item.mjs.map +1 -1
  51. package/fesm2022/kirbydesign-designsystem-kirby-app.mjs +136 -54
  52. package/fesm2022/kirbydesign-designsystem-kirby-app.mjs.map +1 -1
  53. package/fesm2022/kirbydesign-designsystem-list.mjs +1182 -697
  54. package/fesm2022/kirbydesign-designsystem-list.mjs.map +1 -1
  55. package/fesm2022/kirbydesign-designsystem-loading-overlay.mjs +166 -76
  56. package/fesm2022/kirbydesign-designsystem-loading-overlay.mjs.map +1 -1
  57. package/fesm2022/kirbydesign-designsystem-menu.mjs +420 -311
  58. package/fesm2022/kirbydesign-designsystem-menu.mjs.map +1 -1
  59. package/fesm2022/kirbydesign-designsystem-modal.mjs +2467 -1912
  60. package/fesm2022/kirbydesign-designsystem-modal.mjs.map +1 -1
  61. package/fesm2022/kirbydesign-designsystem-page.mjs +1505 -905
  62. package/fesm2022/kirbydesign-designsystem-page.mjs.map +1 -1
  63. package/fesm2022/kirbydesign-designsystem-popover.mjs +204 -169
  64. package/fesm2022/kirbydesign-designsystem-popover.mjs.map +1 -1
  65. package/fesm2022/kirbydesign-designsystem-progress-circle.mjs +209 -158
  66. package/fesm2022/kirbydesign-designsystem-progress-circle.mjs.map +1 -1
  67. package/fesm2022/kirbydesign-designsystem-radio.mjs +537 -365
  68. package/fesm2022/kirbydesign-designsystem-radio.mjs.map +1 -1
  69. package/fesm2022/kirbydesign-designsystem-range.mjs +207 -150
  70. package/fesm2022/kirbydesign-designsystem-range.mjs.map +1 -1
  71. package/fesm2022/kirbydesign-designsystem-reorder-list.mjs +217 -104
  72. package/fesm2022/kirbydesign-designsystem-reorder-list.mjs.map +1 -1
  73. package/fesm2022/kirbydesign-designsystem-router-outlet.mjs +113 -38
  74. package/fesm2022/kirbydesign-designsystem-router-outlet.mjs.map +1 -1
  75. package/fesm2022/kirbydesign-designsystem-section-header.mjs +56 -18
  76. package/fesm2022/kirbydesign-designsystem-section-header.mjs.map +1 -1
  77. package/fesm2022/kirbydesign-designsystem-segmented-control.mjs +276 -232
  78. package/fesm2022/kirbydesign-designsystem-segmented-control.mjs.map +1 -1
  79. package/fesm2022/kirbydesign-designsystem-shared-floating.mjs +319 -382
  80. package/fesm2022/kirbydesign-designsystem-shared-floating.mjs.map +1 -1
  81. package/fesm2022/kirbydesign-designsystem-shared-portal.mjs +73 -84
  82. package/fesm2022/kirbydesign-designsystem-shared-portal.mjs.map +1 -1
  83. package/fesm2022/kirbydesign-designsystem-shared.mjs +665 -531
  84. package/fesm2022/kirbydesign-designsystem-shared.mjs.map +1 -1
  85. package/fesm2022/kirbydesign-designsystem-slide-button.mjs +140 -91
  86. package/fesm2022/kirbydesign-designsystem-slide-button.mjs.map +1 -1
  87. package/fesm2022/kirbydesign-designsystem-slide.mjs +360 -157
  88. package/fesm2022/kirbydesign-designsystem-slide.mjs.map +1 -1
  89. package/fesm2022/kirbydesign-designsystem-spinner.mjs +90 -32
  90. package/fesm2022/kirbydesign-designsystem-spinner.mjs.map +1 -1
  91. package/fesm2022/kirbydesign-designsystem-tab-navigation.mjs +348 -181
  92. package/fesm2022/kirbydesign-designsystem-tab-navigation.mjs.map +1 -1
  93. package/fesm2022/kirbydesign-designsystem-tabs.mjs +286 -121
  94. package/fesm2022/kirbydesign-designsystem-tabs.mjs.map +1 -1
  95. package/fesm2022/kirbydesign-designsystem-testing-base.mjs +6232 -3164
  96. package/fesm2022/kirbydesign-designsystem-testing-base.mjs.map +1 -1
  97. package/fesm2022/kirbydesign-designsystem-testing-jasmine.mjs +118 -95
  98. package/fesm2022/kirbydesign-designsystem-testing-jasmine.mjs.map +1 -1
  99. package/fesm2022/kirbydesign-designsystem-testing-jest.mjs +128 -101
  100. package/fesm2022/kirbydesign-designsystem-testing-jest.mjs.map +1 -1
  101. package/fesm2022/kirbydesign-designsystem-testing.mjs +236 -243
  102. package/fesm2022/kirbydesign-designsystem-testing.mjs.map +1 -1
  103. package/fesm2022/kirbydesign-designsystem-toast.mjs +98 -62
  104. package/fesm2022/kirbydesign-designsystem-toast.mjs.map +1 -1
  105. package/fesm2022/kirbydesign-designsystem-toggle-button.mjs +155 -127
  106. package/fesm2022/kirbydesign-designsystem-toggle-button.mjs.map +1 -1
  107. package/fesm2022/kirbydesign-designsystem-toggle.mjs +180 -150
  108. package/fesm2022/kirbydesign-designsystem-toggle.mjs.map +1 -1
  109. package/fesm2022/kirbydesign-designsystem-types.mjs +39 -24
  110. package/fesm2022/kirbydesign-designsystem-types.mjs.map +1 -1
  111. package/fesm2022/kirbydesign-designsystem.mjs +516 -407
  112. package/fesm2022/kirbydesign-designsystem.mjs.map +1 -1
  113. package/icons/svg/megaphone.svg +3 -0
  114. package/icons/svg/person-blocked.svg +3 -0
  115. package/icons/svg/person-check.svg +3 -0
  116. package/icons/svg/person-close.svg +3 -0
  117. package/icons/svg/person-cloud.svg +3 -0
  118. package/icons/svg/person-power.svg +3 -0
  119. package/icons/svg/person-warning.svg +3 -0
  120. package/icons/svg/phone-device-pin.svg +3 -0
  121. package/icons/svg/phone-device.svg +3 -2
  122. package/package.json +11 -11
  123. package/readme.md +37 -0
  124. package/types/kirbydesign-designsystem-accordion.d.ts +72 -39
  125. package/types/kirbydesign-designsystem-accordion.d.ts.map +1 -1
  126. package/types/kirbydesign-designsystem-action-group.d.ts +46 -39
  127. package/types/kirbydesign-designsystem-action-group.d.ts.map +1 -1
  128. package/types/kirbydesign-designsystem-avatar.d.ts +58 -26
  129. package/types/kirbydesign-designsystem-avatar.d.ts.map +1 -1
  130. package/types/kirbydesign-designsystem-badge.d.ts +30 -19
  131. package/types/kirbydesign-designsystem-badge.d.ts.map +1 -1
  132. package/types/kirbydesign-designsystem-button.d.ts +70 -45
  133. package/types/kirbydesign-designsystem-button.d.ts.map +1 -1
  134. package/types/kirbydesign-designsystem-calendar.d.ts +193 -132
  135. package/types/kirbydesign-designsystem-calendar.d.ts.map +1 -1
  136. package/types/kirbydesign-designsystem-card.d.ts +120 -66
  137. package/types/kirbydesign-designsystem-card.d.ts.map +1 -1
  138. package/types/kirbydesign-designsystem-chart.d.ts +198 -172
  139. package/types/kirbydesign-designsystem-chart.d.ts.map +1 -1
  140. package/types/kirbydesign-designsystem-checkbox.d.ts +96 -68
  141. package/types/kirbydesign-designsystem-checkbox.d.ts.map +1 -1
  142. package/types/kirbydesign-designsystem-config.d.ts +17 -21
  143. package/types/kirbydesign-designsystem-config.d.ts.map +1 -1
  144. package/types/kirbydesign-designsystem-data-table.d.ts +46 -26
  145. package/types/kirbydesign-designsystem-data-table.d.ts.map +1 -1
  146. package/types/kirbydesign-designsystem-divider.d.ts +11 -9
  147. package/types/kirbydesign-designsystem-divider.d.ts.map +1 -1
  148. package/types/kirbydesign-designsystem-dropdown.d.ts +219 -166
  149. package/types/kirbydesign-designsystem-dropdown.d.ts.map +1 -1
  150. package/types/kirbydesign-designsystem-empty-state.d.ts +47 -35
  151. package/types/kirbydesign-designsystem-empty-state.d.ts.map +1 -1
  152. package/types/kirbydesign-designsystem-fab-sheet.d.ts +34 -28
  153. package/types/kirbydesign-designsystem-fab-sheet.d.ts.map +1 -1
  154. package/types/kirbydesign-designsystem-flag.d.ts +18 -13
  155. package/types/kirbydesign-designsystem-flag.d.ts.map +1 -1
  156. package/types/kirbydesign-designsystem-form-field.d.ts +409 -242
  157. package/types/kirbydesign-designsystem-form-field.d.ts.map +1 -1
  158. package/types/kirbydesign-designsystem-gesture.d.ts +41 -46
  159. package/types/kirbydesign-designsystem-gesture.d.ts.map +1 -1
  160. package/types/kirbydesign-designsystem-header.d.ts +102 -64
  161. package/types/kirbydesign-designsystem-header.d.ts.map +1 -1
  162. package/types/kirbydesign-designsystem-helpers-scss.d.ts +6 -8
  163. package/types/kirbydesign-designsystem-helpers-scss.d.ts.map +1 -1
  164. package/types/kirbydesign-designsystem-helpers.d.ts +83 -97
  165. package/types/kirbydesign-designsystem-helpers.d.ts.map +1 -1
  166. package/types/kirbydesign-designsystem-icon.d.ts +63 -59
  167. package/types/kirbydesign-designsystem-icon.d.ts.map +1 -1
  168. package/types/kirbydesign-designsystem-item-group.d.ts +6 -9
  169. package/types/kirbydesign-designsystem-item-group.d.ts.map +1 -1
  170. package/types/kirbydesign-designsystem-item-sliding.d.ts +30 -26
  171. package/types/kirbydesign-designsystem-item-sliding.d.ts.map +1 -1
  172. package/types/kirbydesign-designsystem-item.d.ts +93 -54
  173. package/types/kirbydesign-designsystem-item.d.ts.map +1 -1
  174. package/types/kirbydesign-designsystem-kirby-app.d.ts +18 -19
  175. package/types/kirbydesign-designsystem-kirby-app.d.ts.map +1 -1
  176. package/types/kirbydesign-designsystem-list.d.ts +382 -263
  177. package/types/kirbydesign-designsystem-list.d.ts.map +1 -1
  178. package/types/kirbydesign-designsystem-loading-overlay.d.ts +35 -24
  179. package/types/kirbydesign-designsystem-loading-overlay.d.ts.map +1 -1
  180. package/types/kirbydesign-designsystem-menu.d.ts +119 -69
  181. package/types/kirbydesign-designsystem-menu.d.ts.map +1 -1
  182. package/types/kirbydesign-designsystem-modal.d.ts +577 -455
  183. package/types/kirbydesign-designsystem-modal.d.ts.map +1 -1
  184. package/types/kirbydesign-designsystem-page.d.ts +304 -226
  185. package/types/kirbydesign-designsystem-page.d.ts.map +1 -1
  186. package/types/kirbydesign-designsystem-popover.d.ts +48 -40
  187. package/types/kirbydesign-designsystem-popover.d.ts.map +1 -1
  188. package/types/kirbydesign-designsystem-progress-circle.d.ts +59 -61
  189. package/types/kirbydesign-designsystem-progress-circle.d.ts.map +1 -1
  190. package/types/kirbydesign-designsystem-radio.d.ts +147 -98
  191. package/types/kirbydesign-designsystem-radio.d.ts.map +1 -1
  192. package/types/kirbydesign-designsystem-range.d.ts +90 -45
  193. package/types/kirbydesign-designsystem-range.d.ts.map +1 -1
  194. package/types/kirbydesign-designsystem-reorder-list.d.ts +44 -32
  195. package/types/kirbydesign-designsystem-reorder-list.d.ts.map +1 -1
  196. package/types/kirbydesign-designsystem-router-outlet.d.ts +23 -18
  197. package/types/kirbydesign-designsystem-router-outlet.d.ts.map +1 -1
  198. package/types/kirbydesign-designsystem-section-header.d.ts +5 -8
  199. package/types/kirbydesign-designsystem-section-header.d.ts.map +1 -1
  200. package/types/kirbydesign-designsystem-segmented-control.d.ts +123 -100
  201. package/types/kirbydesign-designsystem-segmented-control.d.ts.map +1 -1
  202. package/types/kirbydesign-designsystem-shared-floating.d.ts +183 -128
  203. package/types/kirbydesign-designsystem-shared-floating.d.ts.map +1 -1
  204. package/types/kirbydesign-designsystem-shared-portal.d.ts +29 -28
  205. package/types/kirbydesign-designsystem-shared-portal.d.ts.map +1 -1
  206. package/types/kirbydesign-designsystem-shared.d.ts +143 -139
  207. package/types/kirbydesign-designsystem-shared.d.ts.map +1 -1
  208. package/types/kirbydesign-designsystem-slide-button.d.ts +43 -34
  209. package/types/kirbydesign-designsystem-slide-button.d.ts.map +1 -1
  210. package/types/kirbydesign-designsystem-slide.d.ts +80 -59
  211. package/types/kirbydesign-designsystem-slide.d.ts.map +1 -1
  212. package/types/kirbydesign-designsystem-spinner.d.ts +13 -14
  213. package/types/kirbydesign-designsystem-spinner.d.ts.map +1 -1
  214. package/types/kirbydesign-designsystem-tab-navigation.d.ts +78 -55
  215. package/types/kirbydesign-designsystem-tab-navigation.d.ts.map +1 -1
  216. package/types/kirbydesign-designsystem-tabs.d.ts +50 -45
  217. package/types/kirbydesign-designsystem-tabs.d.ts.map +1 -1
  218. package/types/kirbydesign-designsystem-testing-base.d.ts +2430 -815
  219. package/types/kirbydesign-designsystem-testing-base.d.ts.map +1 -1
  220. package/types/kirbydesign-designsystem-testing-jasmine.d.ts +9 -10
  221. package/types/kirbydesign-designsystem-testing-jasmine.d.ts.map +1 -1
  222. package/types/kirbydesign-designsystem-testing-jest.d.ts +9 -10
  223. package/types/kirbydesign-designsystem-testing-jest.d.ts.map +1 -1
  224. package/types/kirbydesign-designsystem-testing.d.ts +52 -58
  225. package/types/kirbydesign-designsystem-testing.d.ts.map +1 -1
  226. package/types/kirbydesign-designsystem-toast.d.ts +25 -31
  227. package/types/kirbydesign-designsystem-toast.d.ts.map +1 -1
  228. package/types/kirbydesign-designsystem-toggle-button.d.ts +62 -56
  229. package/types/kirbydesign-designsystem-toggle-button.d.ts.map +1 -1
  230. package/types/kirbydesign-designsystem-toggle.d.ts +71 -63
  231. package/types/kirbydesign-designsystem-toggle.d.ts.map +1 -1
  232. package/types/kirbydesign-designsystem-types.d.ts +15 -22
  233. package/types/kirbydesign-designsystem-types.d.ts.map +1 -1
  234. package/types/kirbydesign-designsystem.d.ts +135 -123
  235. package/types/kirbydesign-designsystem.d.ts.map +1 -1
  236. package/accordion/package.json +0 -4
  237. package/action-group/package.json +0 -4
  238. package/avatar/package.json +0 -4
  239. package/badge/package.json +0 -4
  240. package/button/package.json +0 -4
  241. package/calendar/package.json +0 -4
  242. package/card/package.json +0 -4
  243. package/chart/package.json +0 -4
  244. package/checkbox/package.json +0 -4
  245. package/config/package.json +0 -4
  246. package/data-table/package.json +0 -4
  247. package/divider/package.json +0 -4
  248. package/dropdown/package.json +0 -4
  249. package/empty-state/package.json +0 -4
  250. package/fab-sheet/package.json +0 -4
  251. package/flag/package.json +0 -4
  252. package/form-field/package.json +0 -4
  253. package/gesture/package.json +0 -4
  254. package/header/package.json +0 -4
  255. package/helpers/package.json +0 -4
  256. package/helpers/scss/package.json +0 -4
  257. package/icon/package.json +0 -4
  258. package/item/package.json +0 -4
  259. package/item-group/package.json +0 -4
  260. package/item-sliding/package.json +0 -4
  261. package/kirby-app/package.json +0 -4
  262. package/list/package.json +0 -4
  263. package/loading-overlay/package.json +0 -4
  264. package/menu/package.json +0 -4
  265. package/modal/package.json +0 -4
  266. package/page/package.json +0 -4
  267. package/popover/package.json +0 -4
  268. package/progress-circle/package.json +0 -4
  269. package/radio/package.json +0 -4
  270. package/range/package.json +0 -4
  271. package/reorder-list/package.json +0 -4
  272. package/router-outlet/package.json +0 -4
  273. package/section-header/package.json +0 -4
  274. package/segmented-control/package.json +0 -4
  275. package/shared/floating/package.json +0 -4
  276. package/shared/package.json +0 -4
  277. package/shared/portal/package.json +0 -4
  278. package/slide/package.json +0 -4
  279. package/slide-button/package.json +0 -4
  280. package/spinner/package.json +0 -4
  281. package/tab-navigation/package.json +0 -4
  282. package/tabs/package.json +0 -4
  283. package/testing/package.json +0 -4
  284. package/testing-base/package.json +0 -4
  285. package/testing-jasmine/package.json +0 -4
  286. package/testing-jest/package.json +0 -4
  287. package/toast/package.json +0 -4
  288. package/toggle/package.json +0 -4
  289. package/toggle-button/package.json +0 -4
  290. package/types/package.json +0 -4
@@ -1,206 +1,408 @@
1
- import * as i0 from '@angular/core';
2
- import { HostBinding, Input, ChangeDetectionStrategy, Component, HostListener, Directive, NgModule } from '@angular/core';
3
- import * as i1 from '@kirbydesign/designsystem/shared';
4
- import { ThemeColorDirective } from '@kirbydesign/designsystem/shared';
5
- import { CommonModule } from '@angular/common';
6
-
7
- class CardFooterComponent {
8
- constructor() {
9
- this.hasPadding = true;
10
- }
11
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.18", ngImport: i0, type: CardFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.18", type: CardFooterComponent, isStandalone: true, selector: "kirby-card-footer", inputs: { hasPadding: "hasPadding" }, host: { properties: { "class.has-padding": "this.hasPadding" } }, ngImport: i0, template: "<footer>\n <ng-content></ng-content>\n</footer>\n", styles: [".kirby-line-clamp{display:-webkit-box;-webkit-line-clamp:var(--line-clamp, none);-webkit-box-orient:vertical;overflow:hidden}:host{display:block;padding:0;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;overflow:hidden;backface-visibility:hidden;transform:translateZ(0)}:host.has-padding{padding:16px}footer{display:inherit;flex:inherit}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
13
- }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.18", ngImport: i0, type: CardFooterComponent, decorators: [{
15
- type: Component,
16
- args: [{ selector: 'kirby-card-footer', changeDetection: ChangeDetectionStrategy.OnPush, template: "<footer>\n <ng-content></ng-content>\n</footer>\n", styles: [".kirby-line-clamp{display:-webkit-box;-webkit-line-clamp:var(--line-clamp, none);-webkit-box-orient:vertical;overflow:hidden}:host{display:block;padding:0;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;overflow:hidden;backface-visibility:hidden;transform:translateZ(0)}:host.has-padding{padding:16px}footer{display:inherit;flex:inherit}\n"] }]
17
- }], propDecorators: { hasPadding: [{
18
- type: HostBinding,
19
- args: ['class.has-padding']
20
- }, {
21
- type: Input
22
- }] } });
23
-
24
- class CardHeaderComponent {
25
- constructor() {
26
- this.flagged = null;
27
- this.hasPadding = true;
28
- }
29
- get _cssClass() {
30
- return [this.flagged, this.flagged ? 'flagged' : null];
31
- }
32
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.18", ngImport: i0, type: CardHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
33
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.18", type: CardHeaderComponent, isStandalone: true, selector: "kirby-card-header", inputs: { title: "title", subtitle: "subtitle", isTitleBold: "isTitleBold", flagged: "flagged", hasPadding: "hasPadding" }, host: { properties: { "class.has-padding": "this.hasPadding", "class": "this._cssClass" } }, ngImport: i0, template: "@if (title) {\n <p class=\"title\" [class.bold]=\"isTitleBold\">{{ title }}</p>\n}\n@if (subtitle) {\n <p class=\"subtitle\">{{ subtitle }}</p>\n}\n<ng-content></ng-content>\n", styles: [".kirby-line-clamp{display:-webkit-box;-webkit-line-clamp:var(--line-clamp, none);-webkit-box-orient:vertical;overflow:hidden}:host{display:block;border-top-left-radius:var(--kirby-border-radius-n);border-top-right-radius:var(--kirby-border-radius-n);text-align:center;padding:0;color:var(--kirby-card-header-color);background-color:var(--kirby-card-header-background-color);line-height:normal}:host.has-padding{padding:var(--kirby-internal-card-header-padding, 16px)}:host.success{--kirby-card-header-background-color: var(--kirby-success-tint)}:host.warning{--kirby-card-header-background-color: var(--kirby-warning-tint)}:host.danger{--kirby-card-header-background-color: var(--kirby-danger-tint)}:host.info{--kirby-card-header-background-color: var(--kirby-semi-light)}:host{--kirby-card-header-color: var(--kirby-black)}.title{margin-bottom:var(--kirby-internal-card-header-margin-bottom, 16px);line-height:var(--kirby-internal-card-header-line-height)}.title.bold{font-weight:700}.subtitle{font-size:clamp(12px,.875rem,28px);margin-bottom:0}:host:has(.subtitle) .title{margin-top:4px}:host(.flagged){--kirby-internal-card-header-padding: 2px 8px}:host(.flagged) p{--kirby-internal-card-header-line-height: 1.5;--kirby-internal-card-header-margin-bottom: 0px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
34
- }
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.18", ngImport: i0, type: CardHeaderComponent, decorators: [{
36
- type: Component,
37
- args: [{ selector: 'kirby-card-header', changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (title) {\n <p class=\"title\" [class.bold]=\"isTitleBold\">{{ title }}</p>\n}\n@if (subtitle) {\n <p class=\"subtitle\">{{ subtitle }}</p>\n}\n<ng-content></ng-content>\n", styles: [".kirby-line-clamp{display:-webkit-box;-webkit-line-clamp:var(--line-clamp, none);-webkit-box-orient:vertical;overflow:hidden}:host{display:block;border-top-left-radius:var(--kirby-border-radius-n);border-top-right-radius:var(--kirby-border-radius-n);text-align:center;padding:0;color:var(--kirby-card-header-color);background-color:var(--kirby-card-header-background-color);line-height:normal}:host.has-padding{padding:var(--kirby-internal-card-header-padding, 16px)}:host.success{--kirby-card-header-background-color: var(--kirby-success-tint)}:host.warning{--kirby-card-header-background-color: var(--kirby-warning-tint)}:host.danger{--kirby-card-header-background-color: var(--kirby-danger-tint)}:host.info{--kirby-card-header-background-color: var(--kirby-semi-light)}:host{--kirby-card-header-color: var(--kirby-black)}.title{margin-bottom:var(--kirby-internal-card-header-margin-bottom, 16px);line-height:var(--kirby-internal-card-header-line-height)}.title.bold{font-weight:700}.subtitle{font-size:clamp(12px,.875rem,28px);margin-bottom:0}:host:has(.subtitle) .title{margin-top:4px}:host(.flagged){--kirby-internal-card-header-padding: 2px 8px}:host(.flagged) p{--kirby-internal-card-header-line-height: 1.5;--kirby-internal-card-header-margin-bottom: 0px}\n"] }]
38
- }], propDecorators: { title: [{
39
- type: Input
40
- }], subtitle: [{
41
- type: Input
42
- }], isTitleBold: [{
43
- type: Input
44
- }], flagged: [{
45
- type: Input
46
- }], hasPadding: [{
47
- type: HostBinding,
48
- args: ['class.has-padding']
49
- }, {
50
- type: Input
51
- }], _cssClass: [{
52
- type: HostBinding,
53
- args: ['class']
54
- }] } });
55
-
56
- class CardAsButtonDirective {
57
- constructor(clickableElement) {
58
- this.clickableElement = clickableElement;
59
- this.role = 'button';
60
- this.tabindex = 0;
61
- this._pressed = false;
62
- }
63
- _onKeydownHandler(event) {
64
- if (event.currentTarget !== event.target)
65
- return; // Do not handle keydown events for nested elements - let event bubbling take place as normal
66
- this._pressed = true;
67
- this.clickableElement.nativeElement.click(event);
68
- /*
69
- * Prevent default event from firing so the UA wont
70
- * catch this event and e.g. scroll the page on space,
71
- * which is the default behavior in major browsers
72
- */
73
- event.preventDefault();
74
- }
75
- _onInactiveHandler() {
76
- this._pressed = false;
77
- }
78
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.18", ngImport: i0, type: CardAsButtonDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
79
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.18", type: CardAsButtonDirective, isStandalone: true, selector: "kirby-card[click]", host: { listeners: { "keydown.space": "_onKeydownHandler($event)", "keydown.enter": "_onKeydownHandler($event)", "keyup.space": "_onInactiveHandler()", "keyup.enter": "_onInactiveHandler()", "blur": "_onInactiveHandler()" }, properties: { "attr.role": "this.role", "attr.tabindex": "this.tabindex", "class.interaction-state-active": "this._pressed" } }, ngImport: i0 }); }
80
- }
81
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.18", ngImport: i0, type: CardAsButtonDirective, decorators: [{
82
- type: Directive,
83
- args: [{
84
- // eslint-disable-next-line @angular-eslint/directive-selector
85
- selector: 'kirby-card[click]',
86
- }]
87
- }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { role: [{
88
- type: HostBinding,
89
- args: ['attr.role']
90
- }], tabindex: [{
91
- type: HostBinding,
92
- args: ['attr.tabindex']
93
- }], _pressed: [{
94
- type: HostBinding,
95
- args: ['class.interaction-state-active']
96
- }], _onKeydownHandler: [{
97
- type: HostListener,
98
- args: ['keydown.space', ['$event']]
99
- }, {
100
- type: HostListener,
101
- args: ['keydown.enter', ['$event']]
102
- }], _onInactiveHandler: [{
103
- type: HostListener,
104
- args: ['keyup.space']
105
- }, {
106
- type: HostListener,
107
- args: ['keyup.enter']
108
- }, {
109
- type: HostListener,
110
- args: ['blur']
111
- }] } });
112
-
113
- class CardComponent {
114
- set backgroundImageUrl(value) {
115
- this._backgroundImage = `url('${value}')`;
116
- }
117
- set sizes(value) {
118
- if (typeof value === 'string') {
119
- console.error('Sizes property cannot be a string. Please ensure the size property is bound as an expression:\n[sizes]="{...}"');
120
- }
121
- this.sizesSortedByBreakpoint = this.sortSizesByBreakpoint(value);
122
- }
123
- constructor(elementRef, resizeObserverService, renderer) {
124
- this.elementRef = elementRef;
125
- this.resizeObserverService = resizeObserverService;
126
- this.renderer = renderer;
127
- this.sizesSortedByBreakpoint = this.sortSizesByBreakpoint({
128
- small: 360,
129
- medium: 720,
130
- large: 1024,
131
- });
132
- this.variant = 'elevated';
133
- }
134
- ngOnInit() {
135
- this.resizeObserverService.observe(this.elementRef, (entry) => this.handleResize(entry));
136
- }
137
- ngOnDestroy() {
138
- this.resizeObserverService.unobserve(this.elementRef);
139
- }
140
- sortSizesByBreakpoint(sizes) {
141
- return Object.entries(sizes).sort(this.compareSizesByBreakpoint);
142
- }
143
- compareSizesByBreakpoint(a, b) {
144
- return a[1] > b[1] ? 1 : b[1] > a[1] ? -1 : 0;
145
- }
146
- handleResize(entry) {
147
- const sizeAttributeName = 'size';
148
- const smallestBreakpointName = this.sizesSortedByBreakpoint[0][0];
149
- const smallestBreakpointWidth = this.sizesSortedByBreakpoint[0][1];
150
- if (entry.contentRect.width < smallestBreakpointWidth) {
151
- this.renderer.setAttribute(entry.target, sizeAttributeName, `<${smallestBreakpointName}`);
152
- }
153
- else {
154
- this.sizesSortedByBreakpoint.forEach(([size, width]) => {
155
- if (entry.contentRect.width >= width) {
156
- this.renderer.setAttribute(entry.target, sizeAttributeName, size);
157
- }
158
- });
159
- }
160
- }
161
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.18", ngImport: i0, type: CardComponent, deps: [{ token: i0.ElementRef }, { token: i1.ResizeObserverService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
162
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.18", type: CardComponent, isStandalone: true, selector: "kirby-card", inputs: { title: "title", subtitle: "subtitle", backgroundImageUrl: "backgroundImageUrl", hasPadding: "hasPadding", sizes: "sizes", variant: "variant" }, host: { properties: { "style.--kirby-card-background-image": "this._backgroundImage", "class": "this.variant" } }, ngImport: i0, template: "<div class=\"state-layer\" aria-hidden=\"true\"></div>\n<div class=\"content-layer\">\n <ng-content select=\"kirby-card-header\"></ng-content>\n <div class=\"content-wrapper\" [class.padding]=\"hasPadding\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"kirby-card-footer\"></ng-content>\n</div>\n", styles: [".kirby-line-clamp{display:-webkit-box;-webkit-line-clamp:var(--line-clamp, none);-webkit-box-orient:vertical;overflow:hidden}ion-item-option.primary{background-color:var(--kirby-primary);color:var(--kirby-primary-contrast)}ion-item-option.secondary{background-color:var(--kirby-secondary);color:var(--kirby-secondary-contrast)}ion-item-option.tertiary{background-color:var(--kirby-tertiary);color:var(--kirby-tertiary-contrast)}ion-item-option.success{background-color:var(--kirby-success);color:var(--kirby-success-contrast)}ion-item-option.warning{background-color:var(--kirby-warning);color:var(--kirby-warning-contrast)}ion-item-option.danger{background-color:var(--kirby-danger);color:var(--kirby-danger-contrast)}ion-item-option.white-overlay{background-color:var(--kirby-white-overlay);color:var(--kirby-white-overlay-contrast)}ion-item-option.light{background-color:var(--kirby-light);color:var(--kirby-light-contrast)}ion-item-option.medium{background-color:var(--kirby-medium);color:var(--kirby-medium-contrast)}ion-item-option.dark{background-color:var(--kirby-dark);color:var(--kirby-dark-contrast)}ion-item-option.dark-overlay{background-color:var(--kirby-dark-overlay);color:var(--kirby-dark-overlay-contrast)}:host{--kirby-card-main-background-color: var(--kirby-white);--kirby-card-main-color: var(--kirby-white-contrast);--kirby-card-footer-background-color: var(--kirby-white);--kirby-card-footer-color: var(--kirby-white-contrast);--kirby-inputs-background-color: var(--kirby-dark-overlay);--kirby-inputs-background-color-hover: var(--kirby-dark-overlay-10);--kirby-inputs-background-color-active: var(--kirby-dark-overlay-20);--kirby-inputs-color: var(--kirby-black);--kirby-inputs-indicator-background-color: var(--kirby-black);--kirby-inputs-indicator-color: var(--kirby-white);--kirby-inputs-placeholder-color: var(--kirby-semi-dark);--kirby-inputs-color-hover: var(--kirby-semi-dark);--kirby-inputs-elevation: none;--kirby-divider-color: var(--kirby-background-color)}:host.kirby-color-brightness-light{--kirby-inputs-background-color: var(--kirby-white);--kirby-inputs-background-color-hover: var(--kirby-dark-overlay-10);--kirby-inputs-background-color-active: var(--kirby-dark-overlay-20);--kirby-inputs-color: var(--kirby-black);--kirby-inputs-indicator-background-color: var(--kirby-black);--kirby-inputs-indicator-color: var(--kirby-white);--kirby-inputs-placeholder-color: var(--kirby-semi-dark);--kirby-inputs-color-hover: var(--kirby-semi-dark);--kirby-divider-color: var(--kirby-medium);--kirby-inputs-elevation: var(--kirby-elevation-2)}:host.kirby-color-brightness-dark{--kirby-inputs-background-color: var(--kirby-white-overlay);--kirby-inputs-background-color-hover: var(--kirby-white-overlay-30);--kirby-inputs-background-color-active: var(--kirby-white-overlay-40);--kirby-inputs-color: var(--kirby-white);--kirby-inputs-indicator-background-color: var(--kirby-white);--kirby-inputs-indicator-color: var(--kirby-black);--kirby-inputs-placeholder-color: var(--kirby-white-overlay-50);--kirby-inputs-color-hover: var(--kirby-white-overlay-50);--kirby-inputs-elevation: none}@media(hover:hover){:host.kirby-color-brightness-dark[role=button]:hover{--state-layer-opacity: .08;--state-layer-background-color: var(--kirby-black-contrast);cursor:pointer}}:host.kirby-color-brightness-dark[role=button]:active,:host.kirby-color-brightness-dark[role=button].interaction-state-active{--state-layer-opacity: .16;--state-layer-background-color: var(--kirby-black-contrast)}:host .content-layer{display:inherit;flex-direction:inherit;justify-content:inherit}:host{border-radius:16px;box-shadow:0 1px 24px #1c1c1c0a;color:var(--kirby-card-main-color);background-color:var(--kirby-card-main-background-color);background-image:var(--kirby-card-background-image);background-repeat:var(--kirby-card-background-repeat, no-repeat);background-position:var(--kirby-card-background-position, center);background-size:var(--kirby-card-background-size, cover);border:var(--kirby-card-border, none);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative;z-index:1;width:var(--kirby-card-width, auto)}:host.flat{box-shadow:none}:host.outlined{background-color:transparent;border:var(--kirby-card-border, 1px solid var(--kirby-medium));box-shadow:none}:host.outlined:has(kirby-card-header.flagged){border:none}:host.outlined:has(kirby-card-header.flagged) .content-wrapper{border-block-end:var(--kirby-card-border, 1px solid var(--kirby-medium));border-inline-start:var(--kirby-card-border, 1px solid var(--kirby-medium));border-inline-end:var(--kirby-card-border, 1px solid var(--kirby-medium));border-bottom-left-radius:16px;border-bottom-right-radius:16px}:host[role=button]{--state-layer-opacity: 0;--state-layer-background-color: var(--kirby-black);position:relative}:host[role=button] .content-layer{position:relative;z-index:var(--content-layer-z-index, 1)}:host[role=button] .state-layer{position:absolute;inset:0;overflow:hidden;pointer-events:none;border-radius:inherit;z-index:2}:host[role=button] .state-layer:before{transition:all 80ms linear 0ms;content:\"\";position:absolute;pointer-events:none;inset:0;border-radius:inherit;opacity:var(--state-layer-opacity, 0);background-color:var(--state-layer-background-color, var(--kirby-black))}@media(hover:hover){:host[role=button]:hover{--state-layer-opacity: .04;--state-layer-background-color: var(--kirby-black);cursor:pointer}}:host[role=button]:active,:host[role=button].interaction-state-active{--state-layer-opacity: .08;--state-layer-background-color: var(--kirby-black)}:host[role=button]:focus-visible{transition:all 80ms linear 0ms;box-shadow:0 1px 24px #1c1c1c0a,var(--kirby-focus-ring-md-inset)}:host[role=button]{outline:none}.content-wrapper ::ng-deep>*{--kirby-content-border-top-radius: 0;--kirby-content-border-bottom-radius: 0}.content-wrapper ::ng-deep>:first-child{--kirby-content-border-top-radius: var(--kirby-border-radius-n)}.content-wrapper ::ng-deep>:last-child{--kirby-content-border-bottom-radius: var(--kirby-border-radius-n)}.content-wrapper.padding{padding-top:var(--kirby-card-padding-top, 16px);padding-bottom:var(--kirby-card-padding-bottom, 16px);padding-inline:16px}:host:has(kirby-card-header) .content-wrapper ::ng-deep>:first-child{--kirby-content-border-top-radius: 0}:host:has(kirby-card-footer) .content-wrapper ::ng-deep>:last-child{--kirby-content-border-bottom-radius: 0}.content-layer{height:100%}:host(.primary):not(.outlined){--kirby-card-main-background-color: var(--kirby-primary);--kirby-card-main-color: var(--kirby-primary-contrast)}:host(.secondary):not(.outlined){--kirby-card-main-background-color: var(--kirby-secondary);--kirby-card-main-color: var(--kirby-secondary-contrast)}:host(.tertiary):not(.outlined){--kirby-card-main-background-color: var(--kirby-tertiary);--kirby-card-main-color: var(--kirby-tertiary-contrast)}:host(.success):not(.outlined){--kirby-card-main-background-color: var(--kirby-success);--kirby-card-main-color: var(--kirby-success-contrast)}:host(.warning):not(.outlined){--kirby-card-main-background-color: var(--kirby-warning);--kirby-card-main-color: var(--kirby-warning-contrast)}:host(.danger):not(.outlined){--kirby-card-main-background-color: var(--kirby-danger);--kirby-card-main-color: var(--kirby-danger-contrast)}:host(.white-overlay):not(.outlined){--kirby-card-main-background-color: var(--kirby-white-overlay);--kirby-card-main-color: var(--kirby-white-overlay-contrast)}:host(.light):not(.outlined){--kirby-card-main-background-color: var(--kirby-light);--kirby-card-main-color: var(--kirby-light-contrast)}:host(.medium):not(.outlined){--kirby-card-main-background-color: var(--kirby-medium);--kirby-card-main-color: var(--kirby-medium-contrast)}:host(.dark):not(.outlined){--kirby-card-main-background-color: var(--kirby-dark);--kirby-card-main-color: var(--kirby-dark-contrast)}:host(.dark-overlay):not(.outlined){--kirby-card-main-background-color: var(--kirby-dark-overlay);--kirby-card-main-color: var(--kirby-dark-overlay-contrast)}\n"] }); }
163
- }
164
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.18", ngImport: i0, type: CardComponent, decorators: [{
165
- type: Component,
166
- args: [{ selector: 'kirby-card', template: "<div class=\"state-layer\" aria-hidden=\"true\"></div>\n<div class=\"content-layer\">\n <ng-content select=\"kirby-card-header\"></ng-content>\n <div class=\"content-wrapper\" [class.padding]=\"hasPadding\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"kirby-card-footer\"></ng-content>\n</div>\n", styles: [".kirby-line-clamp{display:-webkit-box;-webkit-line-clamp:var(--line-clamp, none);-webkit-box-orient:vertical;overflow:hidden}ion-item-option.primary{background-color:var(--kirby-primary);color:var(--kirby-primary-contrast)}ion-item-option.secondary{background-color:var(--kirby-secondary);color:var(--kirby-secondary-contrast)}ion-item-option.tertiary{background-color:var(--kirby-tertiary);color:var(--kirby-tertiary-contrast)}ion-item-option.success{background-color:var(--kirby-success);color:var(--kirby-success-contrast)}ion-item-option.warning{background-color:var(--kirby-warning);color:var(--kirby-warning-contrast)}ion-item-option.danger{background-color:var(--kirby-danger);color:var(--kirby-danger-contrast)}ion-item-option.white-overlay{background-color:var(--kirby-white-overlay);color:var(--kirby-white-overlay-contrast)}ion-item-option.light{background-color:var(--kirby-light);color:var(--kirby-light-contrast)}ion-item-option.medium{background-color:var(--kirby-medium);color:var(--kirby-medium-contrast)}ion-item-option.dark{background-color:var(--kirby-dark);color:var(--kirby-dark-contrast)}ion-item-option.dark-overlay{background-color:var(--kirby-dark-overlay);color:var(--kirby-dark-overlay-contrast)}:host{--kirby-card-main-background-color: var(--kirby-white);--kirby-card-main-color: var(--kirby-white-contrast);--kirby-card-footer-background-color: var(--kirby-white);--kirby-card-footer-color: var(--kirby-white-contrast);--kirby-inputs-background-color: var(--kirby-dark-overlay);--kirby-inputs-background-color-hover: var(--kirby-dark-overlay-10);--kirby-inputs-background-color-active: var(--kirby-dark-overlay-20);--kirby-inputs-color: var(--kirby-black);--kirby-inputs-indicator-background-color: var(--kirby-black);--kirby-inputs-indicator-color: var(--kirby-white);--kirby-inputs-placeholder-color: var(--kirby-semi-dark);--kirby-inputs-color-hover: var(--kirby-semi-dark);--kirby-inputs-elevation: none;--kirby-divider-color: var(--kirby-background-color)}:host.kirby-color-brightness-light{--kirby-inputs-background-color: var(--kirby-white);--kirby-inputs-background-color-hover: var(--kirby-dark-overlay-10);--kirby-inputs-background-color-active: var(--kirby-dark-overlay-20);--kirby-inputs-color: var(--kirby-black);--kirby-inputs-indicator-background-color: var(--kirby-black);--kirby-inputs-indicator-color: var(--kirby-white);--kirby-inputs-placeholder-color: var(--kirby-semi-dark);--kirby-inputs-color-hover: var(--kirby-semi-dark);--kirby-divider-color: var(--kirby-medium);--kirby-inputs-elevation: var(--kirby-elevation-2)}:host.kirby-color-brightness-dark{--kirby-inputs-background-color: var(--kirby-white-overlay);--kirby-inputs-background-color-hover: var(--kirby-white-overlay-30);--kirby-inputs-background-color-active: var(--kirby-white-overlay-40);--kirby-inputs-color: var(--kirby-white);--kirby-inputs-indicator-background-color: var(--kirby-white);--kirby-inputs-indicator-color: var(--kirby-black);--kirby-inputs-placeholder-color: var(--kirby-white-overlay-50);--kirby-inputs-color-hover: var(--kirby-white-overlay-50);--kirby-inputs-elevation: none}@media(hover:hover){:host.kirby-color-brightness-dark[role=button]:hover{--state-layer-opacity: .08;--state-layer-background-color: var(--kirby-black-contrast);cursor:pointer}}:host.kirby-color-brightness-dark[role=button]:active,:host.kirby-color-brightness-dark[role=button].interaction-state-active{--state-layer-opacity: .16;--state-layer-background-color: var(--kirby-black-contrast)}:host .content-layer{display:inherit;flex-direction:inherit;justify-content:inherit}:host{border-radius:16px;box-shadow:0 1px 24px #1c1c1c0a;color:var(--kirby-card-main-color);background-color:var(--kirby-card-main-background-color);background-image:var(--kirby-card-background-image);background-repeat:var(--kirby-card-background-repeat, no-repeat);background-position:var(--kirby-card-background-position, center);background-size:var(--kirby-card-background-size, cover);border:var(--kirby-card-border, none);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative;z-index:1;width:var(--kirby-card-width, auto)}:host.flat{box-shadow:none}:host.outlined{background-color:transparent;border:var(--kirby-card-border, 1px solid var(--kirby-medium));box-shadow:none}:host.outlined:has(kirby-card-header.flagged){border:none}:host.outlined:has(kirby-card-header.flagged) .content-wrapper{border-block-end:var(--kirby-card-border, 1px solid var(--kirby-medium));border-inline-start:var(--kirby-card-border, 1px solid var(--kirby-medium));border-inline-end:var(--kirby-card-border, 1px solid var(--kirby-medium));border-bottom-left-radius:16px;border-bottom-right-radius:16px}:host[role=button]{--state-layer-opacity: 0;--state-layer-background-color: var(--kirby-black);position:relative}:host[role=button] .content-layer{position:relative;z-index:var(--content-layer-z-index, 1)}:host[role=button] .state-layer{position:absolute;inset:0;overflow:hidden;pointer-events:none;border-radius:inherit;z-index:2}:host[role=button] .state-layer:before{transition:all 80ms linear 0ms;content:\"\";position:absolute;pointer-events:none;inset:0;border-radius:inherit;opacity:var(--state-layer-opacity, 0);background-color:var(--state-layer-background-color, var(--kirby-black))}@media(hover:hover){:host[role=button]:hover{--state-layer-opacity: .04;--state-layer-background-color: var(--kirby-black);cursor:pointer}}:host[role=button]:active,:host[role=button].interaction-state-active{--state-layer-opacity: .08;--state-layer-background-color: var(--kirby-black)}:host[role=button]:focus-visible{transition:all 80ms linear 0ms;box-shadow:0 1px 24px #1c1c1c0a,var(--kirby-focus-ring-md-inset)}:host[role=button]{outline:none}.content-wrapper ::ng-deep>*{--kirby-content-border-top-radius: 0;--kirby-content-border-bottom-radius: 0}.content-wrapper ::ng-deep>:first-child{--kirby-content-border-top-radius: var(--kirby-border-radius-n)}.content-wrapper ::ng-deep>:last-child{--kirby-content-border-bottom-radius: var(--kirby-border-radius-n)}.content-wrapper.padding{padding-top:var(--kirby-card-padding-top, 16px);padding-bottom:var(--kirby-card-padding-bottom, 16px);padding-inline:16px}:host:has(kirby-card-header) .content-wrapper ::ng-deep>:first-child{--kirby-content-border-top-radius: 0}:host:has(kirby-card-footer) .content-wrapper ::ng-deep>:last-child{--kirby-content-border-bottom-radius: 0}.content-layer{height:100%}:host(.primary):not(.outlined){--kirby-card-main-background-color: var(--kirby-primary);--kirby-card-main-color: var(--kirby-primary-contrast)}:host(.secondary):not(.outlined){--kirby-card-main-background-color: var(--kirby-secondary);--kirby-card-main-color: var(--kirby-secondary-contrast)}:host(.tertiary):not(.outlined){--kirby-card-main-background-color: var(--kirby-tertiary);--kirby-card-main-color: var(--kirby-tertiary-contrast)}:host(.success):not(.outlined){--kirby-card-main-background-color: var(--kirby-success);--kirby-card-main-color: var(--kirby-success-contrast)}:host(.warning):not(.outlined){--kirby-card-main-background-color: var(--kirby-warning);--kirby-card-main-color: var(--kirby-warning-contrast)}:host(.danger):not(.outlined){--kirby-card-main-background-color: var(--kirby-danger);--kirby-card-main-color: var(--kirby-danger-contrast)}:host(.white-overlay):not(.outlined){--kirby-card-main-background-color: var(--kirby-white-overlay);--kirby-card-main-color: var(--kirby-white-overlay-contrast)}:host(.light):not(.outlined){--kirby-card-main-background-color: var(--kirby-light);--kirby-card-main-color: var(--kirby-light-contrast)}:host(.medium):not(.outlined){--kirby-card-main-background-color: var(--kirby-medium);--kirby-card-main-color: var(--kirby-medium-contrast)}:host(.dark):not(.outlined){--kirby-card-main-background-color: var(--kirby-dark);--kirby-card-main-color: var(--kirby-dark-contrast)}:host(.dark-overlay):not(.outlined){--kirby-card-main-background-color: var(--kirby-dark-overlay);--kirby-card-main-color: var(--kirby-dark-overlay-contrast)}\n"] }]
167
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.ResizeObserverService }, { type: i0.Renderer2 }], propDecorators: { title: [{
168
- type: Input
169
- }], subtitle: [{
170
- type: Input
171
- }], _backgroundImage: [{
172
- type: HostBinding,
173
- args: ['style.--kirby-card-background-image']
174
- }], backgroundImageUrl: [{
175
- type: Input
176
- }], hasPadding: [{
177
- type: Input
178
- }], sizes: [{
179
- type: Input
180
- }], variant: [{
181
- type: HostBinding,
182
- args: ['class']
183
- }, {
184
- type: Input
185
- }] } });
186
-
187
- const imports = [CardComponent, CardFooterComponent, CardHeaderComponent, CardAsButtonDirective];
188
- class CardModule {
189
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.18", ngImport: i0, type: CardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
190
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.18", ngImport: i0, type: CardModule, imports: [CommonModule, ThemeColorDirective, CardComponent, CardFooterComponent, CardHeaderComponent, CardAsButtonDirective], exports: [CardComponent, CardFooterComponent, CardHeaderComponent, CardAsButtonDirective, ThemeColorDirective] }); }
191
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.18", ngImport: i0, type: CardModule, imports: [CommonModule] }); }
192
- }
193
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.18", ngImport: i0, type: CardModule, decorators: [{
194
- type: NgModule,
195
- args: [{
196
- imports: [CommonModule, ThemeColorDirective, ...imports],
197
- exports: [...imports, ThemeColorDirective],
198
- }]
199
- }] });
200
-
201
- /**
202
- * Generated bundle index. Do not edit.
203
- */
204
-
1
+ import * as i0 from "@angular/core";
2
+ import { ChangeDetectionStrategy, Component, Directive, HostBinding, HostListener, Input, NgModule } from "@angular/core";
3
+ import * as i1 from "@kirbydesign/designsystem/shared";
4
+ import { ThemeColorDirective } from "@kirbydesign/designsystem/shared";
5
+ import { CommonModule } from "@angular/common";
6
+ var CardFooterComponent = class CardFooterComponent {
7
+ constructor() {
8
+ this.hasPadding = true;
9
+ }
10
+ static {
11
+ this.ɵfac = i0.ɵɵngDeclareFactory({
12
+ minVersion: "12.0.0",
13
+ version: "22.2.2",
14
+ ngImport: i0,
15
+ type: CardFooterComponent,
16
+ deps: [],
17
+ target: i0.ɵɵFactoryTarget.Component
18
+ });
19
+ }
20
+ static {
21
+ this.ɵcmp = i0.ɵɵngDeclareComponent({
22
+ minVersion: "14.0.0",
23
+ version: "22.2.2",
24
+ type: CardFooterComponent,
25
+ isStandalone: true,
26
+ selector: "kirby-card-footer",
27
+ inputs: { hasPadding: "hasPadding" },
28
+ host: { properties: { "class.has-padding": "this.hasPadding" } },
29
+ ngImport: i0,
30
+ template: "<footer>\n <ng-content></ng-content>\n</footer>\n",
31
+ styles: [":host{display:block;padding:var(--kirby-spacing-s);padding:0;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;overflow:hidden;backface-visibility:hidden;transform:translateZ(0)}:host.has-padding{padding:var(--kirby-spacing-s)}footer{display:inherit;flex:inherit}\n"],
32
+ changeDetection: i0.ChangeDetectionStrategy.OnPush
33
+ });
34
+ }
35
+ };
36
+ i0.ɵɵngDeclareClassMetadata({
37
+ minVersion: "12.0.0",
38
+ version: "22.2.2",
39
+ ngImport: i0,
40
+ type: CardFooterComponent,
41
+ decorators: [{
42
+ type: Component,
43
+ args: [{
44
+ selector: "kirby-card-footer",
45
+ changeDetection: ChangeDetectionStrategy.OnPush,
46
+ template: "<footer>\n <ng-content></ng-content>\n</footer>\n",
47
+ styles: [":host{display:block;padding:var(--kirby-spacing-s);padding:0;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;overflow:hidden;backface-visibility:hidden;transform:translateZ(0)}:host.has-padding{padding:var(--kirby-spacing-s)}footer{display:inherit;flex:inherit}\n"]
48
+ }]
49
+ }],
50
+ propDecorators: { hasPadding: [{
51
+ type: HostBinding,
52
+ args: ["class.has-padding"]
53
+ }, { type: Input }] }
54
+ });
55
+ var CardHeaderComponent = class CardHeaderComponent {
56
+ constructor() {
57
+ this.flagged = null;
58
+ this.hasPadding = true;
59
+ }
60
+ get _cssClass() {
61
+ return [this.flagged, this.flagged ? "flagged" : null];
62
+ }
63
+ static {
64
+ this.ɵfac = i0.ɵɵngDeclareFactory({
65
+ minVersion: "12.0.0",
66
+ version: "22.2.2",
67
+ ngImport: i0,
68
+ type: CardHeaderComponent,
69
+ deps: [],
70
+ target: i0.ɵɵFactoryTarget.Component
71
+ });
72
+ }
73
+ static {
74
+ this.ɵcmp = i0.ɵɵngDeclareComponent({
75
+ minVersion: "17.0.0",
76
+ version: "22.2.2",
77
+ type: CardHeaderComponent,
78
+ isStandalone: true,
79
+ selector: "kirby-card-header",
80
+ inputs: {
81
+ title: "title",
82
+ subtitle: "subtitle",
83
+ isTitleBold: "isTitleBold",
84
+ flagged: "flagged",
85
+ hasPadding: "hasPadding"
86
+ },
87
+ host: { properties: {
88
+ "class.has-padding": "this.hasPadding",
89
+ "class": "this._cssClass"
90
+ } },
91
+ ngImport: i0,
92
+ template: "@if (title) {\n <p class=\"title\" [class.bold]=\"isTitleBold\">{{ title }}</p>\n}\n@if (subtitle) {\n <p class=\"subtitle\">{{ subtitle }}</p>\n}\n<ng-content></ng-content>\n",
93
+ styles: [":host{display:block;border-top-left-radius:var(--kirby-border-radius-n);border-top-right-radius:var(--kirby-border-radius-n);text-align:center;padding:0;color:var(--kirby-card-header-color);background-color:var(--kirby-card-header-background-color);line-height:normal}:host.has-padding{padding:var(--kirby-internal-card-header-padding, var(--kirby-spacing-s))}:host.success{--kirby-card-header-background-color: var(--kirby-success-tint)}:host.warning{--kirby-card-header-background-color: var(--kirby-warning-tint)}:host.danger{--kirby-card-header-background-color: var(--kirby-danger-tint)}:host.info{--kirby-card-header-background-color: var(--kirby-semi-light)}:host{--kirby-card-header-color: var(--kirby-black)}.title{margin-bottom:var(--kirby-internal-card-header-margin-bottom, var(--kirby-spacing-s));line-height:var(--kirby-internal-card-header-line-height)}.title.bold{font-weight:var(--kirby-font-weight-bold)}.subtitle{font-size:var(--kirby-font-size-s);margin-bottom:0}:host:has(.subtitle) .title{margin-top:var(--kirby-spacing-xxxs)}:host(.flagged){--kirby-internal-card-header-padding: var(--kirby-spacing-xxxxs) var(--kirby-spacing-xxs)}:host(.flagged) p{--kirby-internal-card-header-line-height: var(--kirby-line-height-n);--kirby-internal-card-header-margin-bottom: 0px}\n"],
94
+ changeDetection: i0.ChangeDetectionStrategy.OnPush
95
+ });
96
+ }
97
+ };
98
+ i0.ɵɵngDeclareClassMetadata({
99
+ minVersion: "12.0.0",
100
+ version: "22.2.2",
101
+ ngImport: i0,
102
+ type: CardHeaderComponent,
103
+ decorators: [{
104
+ type: Component,
105
+ args: [{
106
+ selector: "kirby-card-header",
107
+ changeDetection: ChangeDetectionStrategy.OnPush,
108
+ template: "@if (title) {\n <p class=\"title\" [class.bold]=\"isTitleBold\">{{ title }}</p>\n}\n@if (subtitle) {\n <p class=\"subtitle\">{{ subtitle }}</p>\n}\n<ng-content></ng-content>\n",
109
+ styles: [":host{display:block;border-top-left-radius:var(--kirby-border-radius-n);border-top-right-radius:var(--kirby-border-radius-n);text-align:center;padding:0;color:var(--kirby-card-header-color);background-color:var(--kirby-card-header-background-color);line-height:normal}:host.has-padding{padding:var(--kirby-internal-card-header-padding, var(--kirby-spacing-s))}:host.success{--kirby-card-header-background-color: var(--kirby-success-tint)}:host.warning{--kirby-card-header-background-color: var(--kirby-warning-tint)}:host.danger{--kirby-card-header-background-color: var(--kirby-danger-tint)}:host.info{--kirby-card-header-background-color: var(--kirby-semi-light)}:host{--kirby-card-header-color: var(--kirby-black)}.title{margin-bottom:var(--kirby-internal-card-header-margin-bottom, var(--kirby-spacing-s));line-height:var(--kirby-internal-card-header-line-height)}.title.bold{font-weight:var(--kirby-font-weight-bold)}.subtitle{font-size:var(--kirby-font-size-s);margin-bottom:0}:host:has(.subtitle) .title{margin-top:var(--kirby-spacing-xxxs)}:host(.flagged){--kirby-internal-card-header-padding: var(--kirby-spacing-xxxxs) var(--kirby-spacing-xxs)}:host(.flagged) p{--kirby-internal-card-header-line-height: var(--kirby-line-height-n);--kirby-internal-card-header-margin-bottom: 0px}\n"]
110
+ }]
111
+ }],
112
+ propDecorators: {
113
+ title: [{ type: Input }],
114
+ subtitle: [{ type: Input }],
115
+ isTitleBold: [{ type: Input }],
116
+ flagged: [{ type: Input }],
117
+ hasPadding: [{
118
+ type: HostBinding,
119
+ args: ["class.has-padding"]
120
+ }, { type: Input }],
121
+ _cssClass: [{
122
+ type: HostBinding,
123
+ args: ["class"]
124
+ }]
125
+ }
126
+ });
127
+ var CardAsButtonDirective = class CardAsButtonDirective {
128
+ constructor(clickableElement) {
129
+ this.clickableElement = clickableElement;
130
+ this.role = "button";
131
+ this.tabindex = 0;
132
+ this._pressed = false;
133
+ }
134
+ _onKeydownHandler(event) {
135
+ if (event.currentTarget !== event.target) return;
136
+ this._pressed = true;
137
+ this.clickableElement.nativeElement.click(event);
138
+ event.preventDefault();
139
+ }
140
+ _onInactiveHandler() {
141
+ this._pressed = false;
142
+ }
143
+ static {
144
+ this.ɵfac = i0.ɵɵngDeclareFactory({
145
+ minVersion: "12.0.0",
146
+ version: "22.2.2",
147
+ ngImport: i0,
148
+ type: CardAsButtonDirective,
149
+ deps: [{ token: i0.ElementRef }],
150
+ target: i0.ɵɵFactoryTarget.Directive
151
+ });
152
+ }
153
+ static {
154
+ this.ɵdir = i0.ɵɵngDeclareDirective({
155
+ minVersion: "14.0.0",
156
+ version: "22.2.2",
157
+ type: CardAsButtonDirective,
158
+ isStandalone: true,
159
+ selector: "kirby-card[click]",
160
+ host: {
161
+ listeners: {
162
+ "keydown.space": "_onKeydownHandler($event)",
163
+ "keydown.enter": "_onKeydownHandler($event)",
164
+ "keyup.space": "_onInactiveHandler()",
165
+ "keyup.enter": "_onInactiveHandler()",
166
+ "blur": "_onInactiveHandler()"
167
+ },
168
+ properties: {
169
+ "attr.role": "this.role",
170
+ "attr.tabindex": "this.tabindex",
171
+ "class.interaction-state-active": "this._pressed"
172
+ }
173
+ },
174
+ ngImport: i0
175
+ });
176
+ }
177
+ };
178
+ i0.ɵɵngDeclareClassMetadata({
179
+ minVersion: "12.0.0",
180
+ version: "22.2.2",
181
+ ngImport: i0,
182
+ type: CardAsButtonDirective,
183
+ decorators: [{
184
+ type: Directive,
185
+ args: [{ selector: "kirby-card[click]" }]
186
+ }],
187
+ ctorParameters: () => [{ type: i0.ElementRef }],
188
+ propDecorators: {
189
+ role: [{
190
+ type: HostBinding,
191
+ args: ["attr.role"]
192
+ }],
193
+ tabindex: [{
194
+ type: HostBinding,
195
+ args: ["attr.tabindex"]
196
+ }],
197
+ _pressed: [{
198
+ type: HostBinding,
199
+ args: ["class.interaction-state-active"]
200
+ }],
201
+ _onKeydownHandler: [{
202
+ type: HostListener,
203
+ args: ["keydown.space", ["$event"]]
204
+ }, {
205
+ type: HostListener,
206
+ args: ["keydown.enter", ["$event"]]
207
+ }],
208
+ _onInactiveHandler: [
209
+ {
210
+ type: HostListener,
211
+ args: ["keyup.space"]
212
+ },
213
+ {
214
+ type: HostListener,
215
+ args: ["keyup.enter"]
216
+ },
217
+ {
218
+ type: HostListener,
219
+ args: ["blur"]
220
+ }
221
+ ]
222
+ }
223
+ });
224
+ var CardComponent = class CardComponent {
225
+ set backgroundImageUrl(value) {
226
+ this._backgroundImage = `url('${value}')`;
227
+ }
228
+ set sizes(value) {
229
+ if (typeof value === "string") console.error("Sizes property cannot be a string. Please ensure the size property is bound as an expression:\n[sizes]=\"{...}\"");
230
+ this.sizesSortedByBreakpoint = this.sortSizesByBreakpoint(value);
231
+ }
232
+ constructor(elementRef, resizeObserverService, renderer) {
233
+ this.elementRef = elementRef;
234
+ this.resizeObserverService = resizeObserverService;
235
+ this.renderer = renderer;
236
+ this.sizesSortedByBreakpoint = this.sortSizesByBreakpoint({
237
+ small: 360,
238
+ medium: 720,
239
+ large: 1024
240
+ });
241
+ this.variant = "elevated";
242
+ }
243
+ ngOnInit() {
244
+ this.resizeObserverService.observe(this.elementRef, (entry) => this.handleResize(entry));
245
+ }
246
+ ngOnDestroy() {
247
+ this.resizeObserverService.unobserve(this.elementRef);
248
+ }
249
+ sortSizesByBreakpoint(sizes) {
250
+ return Object.entries(sizes).sort(this.compareSizesByBreakpoint);
251
+ }
252
+ compareSizesByBreakpoint(a, b) {
253
+ return a[1] > b[1] ? 1 : b[1] > a[1] ? -1 : 0;
254
+ }
255
+ handleResize(entry) {
256
+ const sizeAttributeName = "size";
257
+ const smallestBreakpointName = this.sizesSortedByBreakpoint[0][0];
258
+ const smallestBreakpointWidth = this.sizesSortedByBreakpoint[0][1];
259
+ if (entry.contentRect.width < smallestBreakpointWidth) this.renderer.setAttribute(entry.target, sizeAttributeName, `<${smallestBreakpointName}`);
260
+ else this.sizesSortedByBreakpoint.forEach(([size, width]) => {
261
+ if (entry.contentRect.width >= width) this.renderer.setAttribute(entry.target, sizeAttributeName, size);
262
+ });
263
+ }
264
+ static {
265
+ this.ɵfac = i0.ɵɵngDeclareFactory({
266
+ minVersion: "12.0.0",
267
+ version: "22.2.2",
268
+ ngImport: i0,
269
+ type: CardComponent,
270
+ deps: [
271
+ { token: i0.ElementRef },
272
+ { token: i1.ResizeObserverService },
273
+ { token: i0.Renderer2 }
274
+ ],
275
+ target: i0.ɵɵFactoryTarget.Component
276
+ });
277
+ }
278
+ static {
279
+ this.ɵcmp = i0.ɵɵngDeclareComponent({
280
+ minVersion: "14.0.0",
281
+ version: "22.2.2",
282
+ type: CardComponent,
283
+ isStandalone: true,
284
+ selector: "kirby-card",
285
+ inputs: {
286
+ title: "title",
287
+ subtitle: "subtitle",
288
+ backgroundImageUrl: "backgroundImageUrl",
289
+ hasPadding: "hasPadding",
290
+ sizes: "sizes",
291
+ variant: "variant"
292
+ },
293
+ host: { properties: {
294
+ "style.--kirby-card-background-image": "this._backgroundImage",
295
+ "class": "this.variant"
296
+ } },
297
+ ngImport: i0,
298
+ template: "<div class=\"state-layer\" aria-hidden=\"true\"></div>\n<div class=\"content-layer\">\n <ng-content select=\"kirby-card-header\"></ng-content>\n <div class=\"content-wrapper\" [class.padding]=\"hasPadding\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"kirby-card-footer\"></ng-content>\n</div>\n",
299
+ styles: [".kirby-line-clamp{display:-webkit-box;-webkit-line-clamp:var(--line-clamp, none);-webkit-box-orient:vertical;overflow:hidden}ion-item-option.primary{background-color:var(--kirby-primary);color:var(--kirby-primary-contrast)}ion-item-option.secondary{background-color:var(--kirby-secondary);color:var(--kirby-secondary-contrast)}ion-item-option.tertiary{background-color:var(--kirby-tertiary);color:var(--kirby-tertiary-contrast)}ion-item-option.success{background-color:var(--kirby-success);color:var(--kirby-success-contrast)}ion-item-option.warning{background-color:var(--kirby-warning);color:var(--kirby-warning-contrast)}ion-item-option.danger{background-color:var(--kirby-danger);color:var(--kirby-danger-contrast)}ion-item-option.white-overlay{background-color:var(--kirby-white-overlay);color:var(--kirby-white-overlay-contrast)}ion-item-option.light{background-color:var(--kirby-light);color:var(--kirby-light-contrast)}ion-item-option.medium{background-color:var(--kirby-medium);color:var(--kirby-medium-contrast)}ion-item-option.dark{background-color:var(--kirby-dark);color:var(--kirby-dark-contrast)}ion-item-option.dark-overlay{background-color:var(--kirby-dark-overlay);color:var(--kirby-dark-overlay-contrast)}:host{--kirby-card-main-background-color: var(--kirby-white);--kirby-card-main-color: var(--kirby-white-contrast);--kirby-card-footer-background-color: var(--kirby-white);--kirby-card-footer-color: var(--kirby-white-contrast);--kirby-inputs-background-color: var(--kirby-dark-overlay);--kirby-inputs-background-color-hover: var(--kirby-dark-overlay-10);--kirby-inputs-background-color-active: var(--kirby-dark-overlay-20);--kirby-inputs-color: var(--kirby-black);--kirby-inputs-indicator-background-color: var(--kirby-black);--kirby-inputs-indicator-color: var(--kirby-white);--kirby-inputs-placeholder-color: var(--kirby-semi-dark);--kirby-inputs-color-hover: var(--kirby-semi-dark);--kirby-inputs-elevation: none;--kirby-divider-color: var(--kirby-background-color)}:host.kirby-color-brightness-light{--kirby-inputs-background-color: var(--kirby-white);--kirby-inputs-background-color-hover: var(--kirby-dark-overlay-10);--kirby-inputs-background-color-active: var(--kirby-dark-overlay-20);--kirby-inputs-color: var(--kirby-black);--kirby-inputs-indicator-background-color: var(--kirby-black);--kirby-inputs-indicator-color: var(--kirby-white);--kirby-inputs-placeholder-color: var(--kirby-semi-dark);--kirby-inputs-color-hover: var(--kirby-semi-dark);--kirby-divider-color: var(--kirby-medium);--kirby-inputs-elevation: var(--kirby-elevation-2)}:host.kirby-color-brightness-dark{--kirby-inputs-background-color: var(--kirby-white-overlay);--kirby-inputs-background-color-hover: var(--kirby-white-overlay-30);--kirby-inputs-background-color-active: var(--kirby-white-overlay-40);--kirby-inputs-color: var(--kirby-white);--kirby-inputs-indicator-background-color: var(--kirby-white);--kirby-inputs-indicator-color: var(--kirby-black);--kirby-inputs-placeholder-color: var(--kirby-white-overlay-50);--kirby-inputs-color-hover: var(--kirby-white-overlay-50);--kirby-inputs-elevation: none}@media(hover:hover){:host.kirby-color-brightness-dark[role=button]:hover{--state-layer-opacity: .08;--state-layer-background-color: var(--kirby-black-contrast);cursor:pointer}}:host.kirby-color-brightness-dark[role=button]:active,:host.kirby-color-brightness-dark[role=button].interaction-state-active{--state-layer-opacity: .16;--state-layer-background-color: var(--kirby-black-contrast)}:host .content-layer{display:inherit;flex-direction:inherit;justify-content:inherit}:host{border-radius:var(--kirby-border-radius-n);box-shadow:var(--kirby-elevation-2);color:var(--kirby-card-main-color);background-color:var(--kirby-card-main-background-color);background-image:var(--kirby-card-background-image);background-repeat:var(--kirby-card-background-repeat, no-repeat);background-position:var(--kirby-card-background-position, center);background-size:var(--kirby-card-background-size, cover);border:var(--kirby-card-border, none);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative;z-index:var(--kirby-z-index-default);width:var(--kirby-card-width, auto)}:host.flat{box-shadow:none}:host.outlined{background-color:transparent;border:var(--kirby-card-border, 1px solid var(--kirby-medium));box-shadow:none}:host.outlined:has(kirby-card-header.flagged){border:none}:host.outlined:has(kirby-card-header.flagged) .content-wrapper{border-block-end:var(--kirby-card-border, 1px solid var(--kirby-medium));border-inline-start:var(--kirby-card-border, 1px solid var(--kirby-medium));border-inline-end:var(--kirby-card-border, 1px solid var(--kirby-medium));border-bottom-left-radius:var(--kirby-border-radius-n);border-bottom-right-radius:var(--kirby-border-radius-n)}:host[role=button]{--state-layer-opacity: 0;--state-layer-background-color: var(--kirby-black);position:relative}:host[role=button] .content-layer{position:relative;z-index:var(--content-layer-z-index, var(--kirby-z-index-default))}:host[role=button] .state-layer{position:absolute;inset:-0;overflow:hidden;pointer-events:none;border-radius:inherit;z-index:calc(var(--kirby-z-index-default) + 1)}:host[role=button] .state-layer:before{transition:all 80ms linear 0ms;content:\"\";position:absolute;pointer-events:none;inset:0;border-radius:inherit;opacity:var(--state-layer-opacity, 0);background-color:var(--state-layer-background-color, var(--kirby-black))}@media(hover:hover){:host[role=button]:hover{--state-layer-opacity: .04;--state-layer-background-color: var(--kirby-black);cursor:pointer}}:host[role=button]:active,:host[role=button].interaction-state-active{--state-layer-opacity: .08;--state-layer-background-color: var(--kirby-black)}:host[role=button]:focus-visible{transition:all 80ms linear 0ms;box-shadow:var(--kirby-elevation-2),var(--kirby-focus-ring-md-inset)}:host[role=button]{outline:none}.content-wrapper ::ng-deep>*{--kirby-content-border-top-radius: 0;--kirby-content-border-bottom-radius: 0}.content-wrapper ::ng-deep>:first-child{--kirby-content-border-top-radius: var(--kirby-border-radius-n)}.content-wrapper ::ng-deep>:last-child{--kirby-content-border-bottom-radius: var(--kirby-border-radius-n)}.content-wrapper.padding{padding-top:var(--kirby-card-padding-top, var(--kirby-spacing-s));padding-bottom:var(--kirby-card-padding-bottom, var(--kirby-spacing-s));padding-inline:var(--kirby-spacing-s)}:host:has(kirby-card-header) .content-wrapper ::ng-deep>:first-child{--kirby-content-border-top-radius: 0}:host:has(kirby-card-footer) .content-wrapper ::ng-deep>:last-child{--kirby-content-border-bottom-radius: 0}.content-layer{height:100%}:host(:not(.outlined)).primary{--kirby-card-main-background-color: var(--kirby-primary);--kirby-card-main-color: var(--kirby-primary-contrast)}:host(:not(.outlined)).secondary{--kirby-card-main-background-color: var(--kirby-secondary);--kirby-card-main-color: var(--kirby-secondary-contrast)}:host(:not(.outlined)).tertiary{--kirby-card-main-background-color: var(--kirby-tertiary);--kirby-card-main-color: var(--kirby-tertiary-contrast)}:host(:not(.outlined)).success{--kirby-card-main-background-color: var(--kirby-success);--kirby-card-main-color: var(--kirby-success-contrast)}:host(:not(.outlined)).warning{--kirby-card-main-background-color: var(--kirby-warning);--kirby-card-main-color: var(--kirby-warning-contrast)}:host(:not(.outlined)).danger{--kirby-card-main-background-color: var(--kirby-danger);--kirby-card-main-color: var(--kirby-danger-contrast)}:host(:not(.outlined)).white-overlay{--kirby-card-main-background-color: var(--kirby-white-overlay);--kirby-card-main-color: var(--kirby-white-overlay-contrast)}:host(:not(.outlined)).light{--kirby-card-main-background-color: var(--kirby-light);--kirby-card-main-color: var(--kirby-light-contrast)}:host(:not(.outlined)).medium{--kirby-card-main-background-color: var(--kirby-medium);--kirby-card-main-color: var(--kirby-medium-contrast)}:host(:not(.outlined)).dark{--kirby-card-main-background-color: var(--kirby-dark);--kirby-card-main-color: var(--kirby-dark-contrast)}:host(:not(.outlined)).dark-overlay{--kirby-card-main-background-color: var(--kirby-dark-overlay);--kirby-card-main-color: var(--kirby-dark-overlay-contrast)}\n"],
300
+ changeDetection: i0.ChangeDetectionStrategy.Eager
301
+ });
302
+ }
303
+ };
304
+ i0.ɵɵngDeclareClassMetadata({
305
+ minVersion: "12.0.0",
306
+ version: "22.2.2",
307
+ ngImport: i0,
308
+ type: CardComponent,
309
+ decorators: [{
310
+ type: Component,
311
+ args: [{
312
+ selector: "kirby-card",
313
+ changeDetection: ChangeDetectionStrategy.Eager,
314
+ template: "<div class=\"state-layer\" aria-hidden=\"true\"></div>\n<div class=\"content-layer\">\n <ng-content select=\"kirby-card-header\"></ng-content>\n <div class=\"content-wrapper\" [class.padding]=\"hasPadding\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"kirby-card-footer\"></ng-content>\n</div>\n",
315
+ styles: [".kirby-line-clamp{display:-webkit-box;-webkit-line-clamp:var(--line-clamp, none);-webkit-box-orient:vertical;overflow:hidden}ion-item-option.primary{background-color:var(--kirby-primary);color:var(--kirby-primary-contrast)}ion-item-option.secondary{background-color:var(--kirby-secondary);color:var(--kirby-secondary-contrast)}ion-item-option.tertiary{background-color:var(--kirby-tertiary);color:var(--kirby-tertiary-contrast)}ion-item-option.success{background-color:var(--kirby-success);color:var(--kirby-success-contrast)}ion-item-option.warning{background-color:var(--kirby-warning);color:var(--kirby-warning-contrast)}ion-item-option.danger{background-color:var(--kirby-danger);color:var(--kirby-danger-contrast)}ion-item-option.white-overlay{background-color:var(--kirby-white-overlay);color:var(--kirby-white-overlay-contrast)}ion-item-option.light{background-color:var(--kirby-light);color:var(--kirby-light-contrast)}ion-item-option.medium{background-color:var(--kirby-medium);color:var(--kirby-medium-contrast)}ion-item-option.dark{background-color:var(--kirby-dark);color:var(--kirby-dark-contrast)}ion-item-option.dark-overlay{background-color:var(--kirby-dark-overlay);color:var(--kirby-dark-overlay-contrast)}:host{--kirby-card-main-background-color: var(--kirby-white);--kirby-card-main-color: var(--kirby-white-contrast);--kirby-card-footer-background-color: var(--kirby-white);--kirby-card-footer-color: var(--kirby-white-contrast);--kirby-inputs-background-color: var(--kirby-dark-overlay);--kirby-inputs-background-color-hover: var(--kirby-dark-overlay-10);--kirby-inputs-background-color-active: var(--kirby-dark-overlay-20);--kirby-inputs-color: var(--kirby-black);--kirby-inputs-indicator-background-color: var(--kirby-black);--kirby-inputs-indicator-color: var(--kirby-white);--kirby-inputs-placeholder-color: var(--kirby-semi-dark);--kirby-inputs-color-hover: var(--kirby-semi-dark);--kirby-inputs-elevation: none;--kirby-divider-color: var(--kirby-background-color)}:host.kirby-color-brightness-light{--kirby-inputs-background-color: var(--kirby-white);--kirby-inputs-background-color-hover: var(--kirby-dark-overlay-10);--kirby-inputs-background-color-active: var(--kirby-dark-overlay-20);--kirby-inputs-color: var(--kirby-black);--kirby-inputs-indicator-background-color: var(--kirby-black);--kirby-inputs-indicator-color: var(--kirby-white);--kirby-inputs-placeholder-color: var(--kirby-semi-dark);--kirby-inputs-color-hover: var(--kirby-semi-dark);--kirby-divider-color: var(--kirby-medium);--kirby-inputs-elevation: var(--kirby-elevation-2)}:host.kirby-color-brightness-dark{--kirby-inputs-background-color: var(--kirby-white-overlay);--kirby-inputs-background-color-hover: var(--kirby-white-overlay-30);--kirby-inputs-background-color-active: var(--kirby-white-overlay-40);--kirby-inputs-color: var(--kirby-white);--kirby-inputs-indicator-background-color: var(--kirby-white);--kirby-inputs-indicator-color: var(--kirby-black);--kirby-inputs-placeholder-color: var(--kirby-white-overlay-50);--kirby-inputs-color-hover: var(--kirby-white-overlay-50);--kirby-inputs-elevation: none}@media(hover:hover){:host.kirby-color-brightness-dark[role=button]:hover{--state-layer-opacity: .08;--state-layer-background-color: var(--kirby-black-contrast);cursor:pointer}}:host.kirby-color-brightness-dark[role=button]:active,:host.kirby-color-brightness-dark[role=button].interaction-state-active{--state-layer-opacity: .16;--state-layer-background-color: var(--kirby-black-contrast)}:host .content-layer{display:inherit;flex-direction:inherit;justify-content:inherit}:host{border-radius:var(--kirby-border-radius-n);box-shadow:var(--kirby-elevation-2);color:var(--kirby-card-main-color);background-color:var(--kirby-card-main-background-color);background-image:var(--kirby-card-background-image);background-repeat:var(--kirby-card-background-repeat, no-repeat);background-position:var(--kirby-card-background-position, center);background-size:var(--kirby-card-background-size, cover);border:var(--kirby-card-border, none);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative;z-index:var(--kirby-z-index-default);width:var(--kirby-card-width, auto)}:host.flat{box-shadow:none}:host.outlined{background-color:transparent;border:var(--kirby-card-border, 1px solid var(--kirby-medium));box-shadow:none}:host.outlined:has(kirby-card-header.flagged){border:none}:host.outlined:has(kirby-card-header.flagged) .content-wrapper{border-block-end:var(--kirby-card-border, 1px solid var(--kirby-medium));border-inline-start:var(--kirby-card-border, 1px solid var(--kirby-medium));border-inline-end:var(--kirby-card-border, 1px solid var(--kirby-medium));border-bottom-left-radius:var(--kirby-border-radius-n);border-bottom-right-radius:var(--kirby-border-radius-n)}:host[role=button]{--state-layer-opacity: 0;--state-layer-background-color: var(--kirby-black);position:relative}:host[role=button] .content-layer{position:relative;z-index:var(--content-layer-z-index, var(--kirby-z-index-default))}:host[role=button] .state-layer{position:absolute;inset:-0;overflow:hidden;pointer-events:none;border-radius:inherit;z-index:calc(var(--kirby-z-index-default) + 1)}:host[role=button] .state-layer:before{transition:all 80ms linear 0ms;content:\"\";position:absolute;pointer-events:none;inset:0;border-radius:inherit;opacity:var(--state-layer-opacity, 0);background-color:var(--state-layer-background-color, var(--kirby-black))}@media(hover:hover){:host[role=button]:hover{--state-layer-opacity: .04;--state-layer-background-color: var(--kirby-black);cursor:pointer}}:host[role=button]:active,:host[role=button].interaction-state-active{--state-layer-opacity: .08;--state-layer-background-color: var(--kirby-black)}:host[role=button]:focus-visible{transition:all 80ms linear 0ms;box-shadow:var(--kirby-elevation-2),var(--kirby-focus-ring-md-inset)}:host[role=button]{outline:none}.content-wrapper ::ng-deep>*{--kirby-content-border-top-radius: 0;--kirby-content-border-bottom-radius: 0}.content-wrapper ::ng-deep>:first-child{--kirby-content-border-top-radius: var(--kirby-border-radius-n)}.content-wrapper ::ng-deep>:last-child{--kirby-content-border-bottom-radius: var(--kirby-border-radius-n)}.content-wrapper.padding{padding-top:var(--kirby-card-padding-top, var(--kirby-spacing-s));padding-bottom:var(--kirby-card-padding-bottom, var(--kirby-spacing-s));padding-inline:var(--kirby-spacing-s)}:host:has(kirby-card-header) .content-wrapper ::ng-deep>:first-child{--kirby-content-border-top-radius: 0}:host:has(kirby-card-footer) .content-wrapper ::ng-deep>:last-child{--kirby-content-border-bottom-radius: 0}.content-layer{height:100%}:host(:not(.outlined)).primary{--kirby-card-main-background-color: var(--kirby-primary);--kirby-card-main-color: var(--kirby-primary-contrast)}:host(:not(.outlined)).secondary{--kirby-card-main-background-color: var(--kirby-secondary);--kirby-card-main-color: var(--kirby-secondary-contrast)}:host(:not(.outlined)).tertiary{--kirby-card-main-background-color: var(--kirby-tertiary);--kirby-card-main-color: var(--kirby-tertiary-contrast)}:host(:not(.outlined)).success{--kirby-card-main-background-color: var(--kirby-success);--kirby-card-main-color: var(--kirby-success-contrast)}:host(:not(.outlined)).warning{--kirby-card-main-background-color: var(--kirby-warning);--kirby-card-main-color: var(--kirby-warning-contrast)}:host(:not(.outlined)).danger{--kirby-card-main-background-color: var(--kirby-danger);--kirby-card-main-color: var(--kirby-danger-contrast)}:host(:not(.outlined)).white-overlay{--kirby-card-main-background-color: var(--kirby-white-overlay);--kirby-card-main-color: var(--kirby-white-overlay-contrast)}:host(:not(.outlined)).light{--kirby-card-main-background-color: var(--kirby-light);--kirby-card-main-color: var(--kirby-light-contrast)}:host(:not(.outlined)).medium{--kirby-card-main-background-color: var(--kirby-medium);--kirby-card-main-color: var(--kirby-medium-contrast)}:host(:not(.outlined)).dark{--kirby-card-main-background-color: var(--kirby-dark);--kirby-card-main-color: var(--kirby-dark-contrast)}:host(:not(.outlined)).dark-overlay{--kirby-card-main-background-color: var(--kirby-dark-overlay);--kirby-card-main-color: var(--kirby-dark-overlay-contrast)}\n"]
316
+ }]
317
+ }],
318
+ ctorParameters: () => [
319
+ { type: i0.ElementRef },
320
+ { type: i1.ResizeObserverService },
321
+ { type: i0.Renderer2 }
322
+ ],
323
+ propDecorators: {
324
+ title: [{ type: Input }],
325
+ subtitle: [{ type: Input }],
326
+ _backgroundImage: [{
327
+ type: HostBinding,
328
+ args: ["style.--kirby-card-background-image"]
329
+ }],
330
+ backgroundImageUrl: [{ type: Input }],
331
+ hasPadding: [{ type: Input }],
332
+ sizes: [{ type: Input }],
333
+ variant: [{
334
+ type: HostBinding,
335
+ args: ["class"]
336
+ }, { type: Input }]
337
+ }
338
+ });
339
+ const imports = [
340
+ CardComponent,
341
+ CardFooterComponent,
342
+ CardHeaderComponent,
343
+ CardAsButtonDirective
344
+ ];
345
+ var CardModule = class CardModule {
346
+ static {
347
+ this.ɵfac = i0.ɵɵngDeclareFactory({
348
+ minVersion: "12.0.0",
349
+ version: "22.2.2",
350
+ ngImport: i0,
351
+ type: CardModule,
352
+ deps: [],
353
+ target: i0.ɵɵFactoryTarget.NgModule
354
+ });
355
+ }
356
+ static {
357
+ this.ɵmod = i0.ɵɵngDeclareNgModule({
358
+ minVersion: "14.0.0",
359
+ version: "22.2.2",
360
+ ngImport: i0,
361
+ type: CardModule,
362
+ imports: [
363
+ CommonModule,
364
+ ThemeColorDirective,
365
+ CardComponent,
366
+ CardFooterComponent,
367
+ CardHeaderComponent,
368
+ CardAsButtonDirective
369
+ ],
370
+ exports: [
371
+ CardComponent,
372
+ CardFooterComponent,
373
+ CardHeaderComponent,
374
+ CardAsButtonDirective,
375
+ ThemeColorDirective
376
+ ]
377
+ });
378
+ }
379
+ static {
380
+ this.ɵinj = i0.ɵɵngDeclareInjector({
381
+ minVersion: "12.0.0",
382
+ version: "22.2.2",
383
+ ngImport: i0,
384
+ type: CardModule,
385
+ imports: [CommonModule]
386
+ });
387
+ }
388
+ };
389
+ i0.ɵɵngDeclareClassMetadata({
390
+ minVersion: "12.0.0",
391
+ version: "22.2.2",
392
+ ngImport: i0,
393
+ type: CardModule,
394
+ decorators: [{
395
+ type: NgModule,
396
+ args: [{
397
+ imports: [
398
+ CommonModule,
399
+ ThemeColorDirective,
400
+ ...imports
401
+ ],
402
+ exports: [...imports, ThemeColorDirective]
403
+ }]
404
+ }]
405
+ });
205
406
  export { CardAsButtonDirective, CardComponent, CardFooterComponent, CardHeaderComponent, CardModule };
206
- //# sourceMappingURL=kirbydesign-designsystem-card.mjs.map
407
+
408
+ //# sourceMappingURL=kirbydesign-designsystem-card.mjs.map