@kirbydesign/designsystem 11.11.3-dev-e7cb27f → 12.0.0-dev-67d5287

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 (282) 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 +102 -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 +439 -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 -901
  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 -303
  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 +1185 -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 -923
  62. package/fesm2022/kirbydesign-designsystem-page.mjs.map +1 -1
  63. package/fesm2022/kirbydesign-designsystem-popover.mjs +203 -183
  64. package/fesm2022/kirbydesign-designsystem-popover.mjs.map +1 -1
  65. package/fesm2022/kirbydesign-designsystem-progress-circle.mjs +209 -121
  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 -529
  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 -158
  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/package.json +10 -10
  115. package/readme.md +37 -0
  116. package/types/kirbydesign-designsystem-accordion.d.ts +72 -39
  117. package/types/kirbydesign-designsystem-accordion.d.ts.map +1 -1
  118. package/types/kirbydesign-designsystem-action-group.d.ts +46 -39
  119. package/types/kirbydesign-designsystem-action-group.d.ts.map +1 -1
  120. package/types/kirbydesign-designsystem-avatar.d.ts +62 -26
  121. package/types/kirbydesign-designsystem-avatar.d.ts.map +1 -1
  122. package/types/kirbydesign-designsystem-badge.d.ts +30 -19
  123. package/types/kirbydesign-designsystem-badge.d.ts.map +1 -1
  124. package/types/kirbydesign-designsystem-button.d.ts +70 -45
  125. package/types/kirbydesign-designsystem-button.d.ts.map +1 -1
  126. package/types/kirbydesign-designsystem-calendar.d.ts +193 -132
  127. package/types/kirbydesign-designsystem-calendar.d.ts.map +1 -1
  128. package/types/kirbydesign-designsystem-card.d.ts +130 -66
  129. package/types/kirbydesign-designsystem-card.d.ts.map +1 -1
  130. package/types/kirbydesign-designsystem-chart.d.ts +198 -172
  131. package/types/kirbydesign-designsystem-chart.d.ts.map +1 -1
  132. package/types/kirbydesign-designsystem-checkbox.d.ts +96 -68
  133. package/types/kirbydesign-designsystem-checkbox.d.ts.map +1 -1
  134. package/types/kirbydesign-designsystem-config.d.ts +17 -21
  135. package/types/kirbydesign-designsystem-config.d.ts.map +1 -1
  136. package/types/kirbydesign-designsystem-data-table.d.ts +46 -26
  137. package/types/kirbydesign-designsystem-data-table.d.ts.map +1 -1
  138. package/types/kirbydesign-designsystem-divider.d.ts +11 -9
  139. package/types/kirbydesign-designsystem-divider.d.ts.map +1 -1
  140. package/types/kirbydesign-designsystem-dropdown.d.ts +219 -166
  141. package/types/kirbydesign-designsystem-dropdown.d.ts.map +1 -1
  142. package/types/kirbydesign-designsystem-empty-state.d.ts +47 -35
  143. package/types/kirbydesign-designsystem-empty-state.d.ts.map +1 -1
  144. package/types/kirbydesign-designsystem-fab-sheet.d.ts +34 -28
  145. package/types/kirbydesign-designsystem-fab-sheet.d.ts.map +1 -1
  146. package/types/kirbydesign-designsystem-flag.d.ts +18 -13
  147. package/types/kirbydesign-designsystem-flag.d.ts.map +1 -1
  148. package/types/kirbydesign-designsystem-form-field.d.ts +409 -242
  149. package/types/kirbydesign-designsystem-form-field.d.ts.map +1 -1
  150. package/types/kirbydesign-designsystem-gesture.d.ts +41 -46
  151. package/types/kirbydesign-designsystem-gesture.d.ts.map +1 -1
  152. package/types/kirbydesign-designsystem-header.d.ts +102 -64
  153. package/types/kirbydesign-designsystem-header.d.ts.map +1 -1
  154. package/types/kirbydesign-designsystem-helpers-scss.d.ts +6 -8
  155. package/types/kirbydesign-designsystem-helpers-scss.d.ts.map +1 -1
  156. package/types/kirbydesign-designsystem-helpers.d.ts +83 -97
  157. package/types/kirbydesign-designsystem-helpers.d.ts.map +1 -1
  158. package/types/kirbydesign-designsystem-icon.d.ts +63 -59
  159. package/types/kirbydesign-designsystem-icon.d.ts.map +1 -1
  160. package/types/kirbydesign-designsystem-item-group.d.ts +6 -9
  161. package/types/kirbydesign-designsystem-item-group.d.ts.map +1 -1
  162. package/types/kirbydesign-designsystem-item-sliding.d.ts +30 -26
  163. package/types/kirbydesign-designsystem-item-sliding.d.ts.map +1 -1
  164. package/types/kirbydesign-designsystem-item.d.ts +93 -54
  165. package/types/kirbydesign-designsystem-item.d.ts.map +1 -1
  166. package/types/kirbydesign-designsystem-kirby-app.d.ts +18 -19
  167. package/types/kirbydesign-designsystem-kirby-app.d.ts.map +1 -1
  168. package/types/kirbydesign-designsystem-list.d.ts +387 -263
  169. package/types/kirbydesign-designsystem-list.d.ts.map +1 -1
  170. package/types/kirbydesign-designsystem-loading-overlay.d.ts +35 -24
  171. package/types/kirbydesign-designsystem-loading-overlay.d.ts.map +1 -1
  172. package/types/kirbydesign-designsystem-menu.d.ts +119 -69
  173. package/types/kirbydesign-designsystem-menu.d.ts.map +1 -1
  174. package/types/kirbydesign-designsystem-modal.d.ts +577 -455
  175. package/types/kirbydesign-designsystem-modal.d.ts.map +1 -1
  176. package/types/kirbydesign-designsystem-page.d.ts +304 -229
  177. package/types/kirbydesign-designsystem-page.d.ts.map +1 -1
  178. package/types/kirbydesign-designsystem-popover.d.ts +48 -40
  179. package/types/kirbydesign-designsystem-popover.d.ts.map +1 -1
  180. package/types/kirbydesign-designsystem-progress-circle.d.ts +60 -38
  181. package/types/kirbydesign-designsystem-progress-circle.d.ts.map +1 -1
  182. package/types/kirbydesign-designsystem-radio.d.ts +147 -98
  183. package/types/kirbydesign-designsystem-radio.d.ts.map +1 -1
  184. package/types/kirbydesign-designsystem-range.d.ts +90 -45
  185. package/types/kirbydesign-designsystem-range.d.ts.map +1 -1
  186. package/types/kirbydesign-designsystem-reorder-list.d.ts +44 -32
  187. package/types/kirbydesign-designsystem-reorder-list.d.ts.map +1 -1
  188. package/types/kirbydesign-designsystem-router-outlet.d.ts +23 -18
  189. package/types/kirbydesign-designsystem-router-outlet.d.ts.map +1 -1
  190. package/types/kirbydesign-designsystem-section-header.d.ts +5 -8
  191. package/types/kirbydesign-designsystem-section-header.d.ts.map +1 -1
  192. package/types/kirbydesign-designsystem-segmented-control.d.ts +123 -100
  193. package/types/kirbydesign-designsystem-segmented-control.d.ts.map +1 -1
  194. package/types/kirbydesign-designsystem-shared-floating.d.ts +183 -128
  195. package/types/kirbydesign-designsystem-shared-floating.d.ts.map +1 -1
  196. package/types/kirbydesign-designsystem-shared-portal.d.ts +29 -28
  197. package/types/kirbydesign-designsystem-shared-portal.d.ts.map +1 -1
  198. package/types/kirbydesign-designsystem-shared.d.ts +143 -139
  199. package/types/kirbydesign-designsystem-shared.d.ts.map +1 -1
  200. package/types/kirbydesign-designsystem-slide-button.d.ts +43 -34
  201. package/types/kirbydesign-designsystem-slide-button.d.ts.map +1 -1
  202. package/types/kirbydesign-designsystem-slide.d.ts +80 -59
  203. package/types/kirbydesign-designsystem-slide.d.ts.map +1 -1
  204. package/types/kirbydesign-designsystem-spinner.d.ts +13 -14
  205. package/types/kirbydesign-designsystem-spinner.d.ts.map +1 -1
  206. package/types/kirbydesign-designsystem-tab-navigation.d.ts +78 -55
  207. package/types/kirbydesign-designsystem-tab-navigation.d.ts.map +1 -1
  208. package/types/kirbydesign-designsystem-tabs.d.ts +50 -45
  209. package/types/kirbydesign-designsystem-tabs.d.ts.map +1 -1
  210. package/types/kirbydesign-designsystem-testing-base.d.ts +2430 -815
  211. package/types/kirbydesign-designsystem-testing-base.d.ts.map +1 -1
  212. package/types/kirbydesign-designsystem-testing-jasmine.d.ts +9 -10
  213. package/types/kirbydesign-designsystem-testing-jasmine.d.ts.map +1 -1
  214. package/types/kirbydesign-designsystem-testing-jest.d.ts +9 -10
  215. package/types/kirbydesign-designsystem-testing-jest.d.ts.map +1 -1
  216. package/types/kirbydesign-designsystem-testing.d.ts +52 -58
  217. package/types/kirbydesign-designsystem-testing.d.ts.map +1 -1
  218. package/types/kirbydesign-designsystem-toast.d.ts +25 -31
  219. package/types/kirbydesign-designsystem-toast.d.ts.map +1 -1
  220. package/types/kirbydesign-designsystem-toggle-button.d.ts +62 -56
  221. package/types/kirbydesign-designsystem-toggle-button.d.ts.map +1 -1
  222. package/types/kirbydesign-designsystem-toggle.d.ts +71 -63
  223. package/types/kirbydesign-designsystem-toggle.d.ts.map +1 -1
  224. package/types/kirbydesign-designsystem-types.d.ts +15 -22
  225. package/types/kirbydesign-designsystem-types.d.ts.map +1 -1
  226. package/types/kirbydesign-designsystem.d.ts +135 -123
  227. package/types/kirbydesign-designsystem.d.ts.map +1 -1
  228. package/accordion/package.json +0 -4
  229. package/action-group/package.json +0 -4
  230. package/avatar/package.json +0 -4
  231. package/badge/package.json +0 -4
  232. package/button/package.json +0 -4
  233. package/calendar/package.json +0 -4
  234. package/card/package.json +0 -4
  235. package/chart/package.json +0 -4
  236. package/checkbox/package.json +0 -4
  237. package/config/package.json +0 -4
  238. package/data-table/package.json +0 -4
  239. package/divider/package.json +0 -4
  240. package/dropdown/package.json +0 -4
  241. package/empty-state/package.json +0 -4
  242. package/fab-sheet/package.json +0 -4
  243. package/flag/package.json +0 -4
  244. package/form-field/package.json +0 -4
  245. package/gesture/package.json +0 -4
  246. package/header/package.json +0 -4
  247. package/helpers/package.json +0 -4
  248. package/helpers/scss/package.json +0 -4
  249. package/icon/package.json +0 -4
  250. package/item/package.json +0 -4
  251. package/item-group/package.json +0 -4
  252. package/item-sliding/package.json +0 -4
  253. package/kirby-app/package.json +0 -4
  254. package/list/package.json +0 -4
  255. package/loading-overlay/package.json +0 -4
  256. package/menu/package.json +0 -4
  257. package/modal/package.json +0 -4
  258. package/page/package.json +0 -4
  259. package/popover/package.json +0 -4
  260. package/progress-circle/package.json +0 -4
  261. package/radio/package.json +0 -4
  262. package/range/package.json +0 -4
  263. package/reorder-list/package.json +0 -4
  264. package/router-outlet/package.json +0 -4
  265. package/section-header/package.json +0 -4
  266. package/segmented-control/package.json +0 -4
  267. package/shared/floating/package.json +0 -4
  268. package/shared/package.json +0 -4
  269. package/shared/portal/package.json +0 -4
  270. package/slide/package.json +0 -4
  271. package/slide-button/package.json +0 -4
  272. package/spinner/package.json +0 -4
  273. package/tab-navigation/package.json +0 -4
  274. package/tabs/package.json +0 -4
  275. package/testing/package.json +0 -4
  276. package/testing-base/package.json +0 -4
  277. package/testing-jasmine/package.json +0 -4
  278. package/testing-jest/package.json +0 -4
  279. package/toast/package.json +0 -4
  280. package/toggle/package.json +0 -4
  281. package/toggle-button/package.json +0 -4
  282. package/types/package.json +0 -4
@@ -1,122 +1,210 @@
1
- import * as i0 from '@angular/core';
2
- import { HostBinding, Input, ChangeDetectionStrategy, Component } from '@angular/core';
3
- import { ThemeColorDirective } from '@kirbydesign/designsystem/shared';
4
-
5
- class ProgressCircleRingComponent {
6
- constructor() {
7
- this.UPPER_AND_LOWER_BOUND_GAP = 2.5;
8
- this.value = 0;
9
- this.themeColor = 'success';
10
- this.size = 'md';
11
- }
12
- get _sizeClass() {
13
- return this.size;
14
- }
15
- ngAfterViewInit() {
16
- this.viewInitialized = true;
17
- }
18
- get _progress() {
19
- if (this.value <= 0)
20
- return 0;
21
- if (this.value >= 100)
22
- return 100;
23
- return Math.min(this.value, 100 - this.UPPER_AND_LOWER_BOUND_GAP);
24
- }
25
- get _linecap() {
26
- return this._progress <= 0 || this._progress >= 100 ? 'butt' : 'round';
27
- }
28
- get _remainder() {
29
- return 100 - this._progress;
30
- }
31
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ProgressCircleRingComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
32
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.23", type: ProgressCircleRingComponent, isStandalone: true, selector: "kirby-progress-circle-ring", inputs: { value: "value", themeColor: "themeColor", size: "size" }, host: { properties: { "class": "this._sizeClass", "class.view-initialized": "this.viewInitialized" } }, ngImport: i0, template: "<svg width=\"100%\" height=\"100%\" aria-hidden=\"true\">\n <circle\n shape-rendering=\"geometricPrecision\"\n class=\"circle\"\n fill=\"transparent\"\n cx=\"50%\"\n cy=\"50%\"\n />\n <circle\n shape-rendering=\"geometricPrecision\"\n class=\"progress\"\n fill=\"transparent\"\n pathLength=\"100\"\n cx=\"50%\"\n cy=\"50%\"\n [attr.stroke-linecap]=\"_linecap\"\n [attr.stroke-dasharray]=\"_progress + ' ' + _remainder\"\n />\n</svg>\n", styles: [".kirby-line-clamp{display:-webkit-box;-webkit-line-clamp:var(--line-clamp, none);-webkit-box-orient:vertical;overflow:hidden}:host{width:100%;height:100%}:host.success{--kirby-progress-circle-stroke-color: var(--kirby-success-shade)}:host.warning{--kirby-progress-circle-stroke-color: var(--kirby-warning-shade)}:host.danger{--kirby-progress-circle-stroke-color: var(--kirby-danger)}:host.view-initialized .progress{transition-property:stroke-dasharray,stroke;transition-duration:var(--kirby-transition-duration-extra-long);transition-timing-function:var(--kirby-transition-easing-enter-exit);transform-origin:50% 50%;stroke:var(--kirby-progress-circle-stroke-color, var(--kirby-success))}svg{rotate:-90deg}.circle,.progress{r:calc(50% - var(--kirby-progress-circle-stroke-width, 4px) / 2);stroke-width:var(--kirby-progress-circle-stroke-width, 4px)}.circle{stroke:var(--kirby-semi-light)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
33
- }
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ProgressCircleRingComponent, decorators: [{
35
- type: Component,
36
- args: [{ selector: 'kirby-progress-circle-ring', changeDetection: ChangeDetectionStrategy.OnPush, template: "<svg width=\"100%\" height=\"100%\" aria-hidden=\"true\">\n <circle\n shape-rendering=\"geometricPrecision\"\n class=\"circle\"\n fill=\"transparent\"\n cx=\"50%\"\n cy=\"50%\"\n />\n <circle\n shape-rendering=\"geometricPrecision\"\n class=\"progress\"\n fill=\"transparent\"\n pathLength=\"100\"\n cx=\"50%\"\n cy=\"50%\"\n [attr.stroke-linecap]=\"_linecap\"\n [attr.stroke-dasharray]=\"_progress + ' ' + _remainder\"\n />\n</svg>\n", styles: [".kirby-line-clamp{display:-webkit-box;-webkit-line-clamp:var(--line-clamp, none);-webkit-box-orient:vertical;overflow:hidden}:host{width:100%;height:100%}:host.success{--kirby-progress-circle-stroke-color: var(--kirby-success-shade)}:host.warning{--kirby-progress-circle-stroke-color: var(--kirby-warning-shade)}:host.danger{--kirby-progress-circle-stroke-color: var(--kirby-danger)}:host.view-initialized .progress{transition-property:stroke-dasharray,stroke;transition-duration:var(--kirby-transition-duration-extra-long);transition-timing-function:var(--kirby-transition-easing-enter-exit);transform-origin:50% 50%;stroke:var(--kirby-progress-circle-stroke-color, var(--kirby-success))}svg{rotate:-90deg}.circle,.progress{r:calc(50% - var(--kirby-progress-circle-stroke-width, 4px) / 2);stroke-width:var(--kirby-progress-circle-stroke-width, 4px)}.circle{stroke:var(--kirby-semi-light)}\n"] }]
37
- }], propDecorators: { value: [{
38
- type: Input
39
- }], themeColor: [{
40
- type: Input
41
- }], size: [{
42
- type: Input
43
- }], _sizeClass: [{
44
- type: HostBinding,
45
- args: ['class']
46
- }], viewInitialized: [{
47
- type: HostBinding,
48
- args: ['class.view-initialized']
49
- }] } });
50
-
51
- class ProgressCircleComponent {
52
- get _cssSize() {
53
- return this.size;
54
- }
55
- constructor(elementRef, changeDetectorRef) {
56
- this.elementRef = elementRef;
57
- this.changeDetectorRef = changeDetectorRef;
58
- this.role = 'progressbar';
59
- this.value = 0;
60
- this.size = 'md';
61
- this.themeColor = 'success';
62
- this.onIntersectionChange = (entries) => {
63
- this.hasElementBeenVisible = entries && entries.some((entry) => entry.isIntersecting);
64
- if (this.hasElementBeenVisible) {
65
- this.unobserve();
66
- this.changeDetectorRef.markForCheck();
67
- }
68
- };
69
- }
70
- ngAfterViewInit() {
71
- if (!this.observer) {
72
- this.observer = new IntersectionObserver(this.onIntersectionChange, {
73
- threshold: 0.5,
74
- });
75
- this.observer.observe(this.elementRef.nativeElement);
76
- }
77
- }
78
- ngOnDestroy() {
79
- this.unobserve();
80
- }
81
- unobserve() {
82
- if (this.observer) {
83
- this.observer.unobserve(this.elementRef.nativeElement);
84
- // Safari does not support "disconnect", see: https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#Browser_compatibility
85
- if (typeof this.observer.disconnect === 'function') {
86
- this.observer.disconnect();
87
- }
88
- }
89
- }
90
- get _shownValue() {
91
- // This is needed to make an animation [0 -> value] when element is shown to the user
92
- return this.hasElementBeenVisible ? this.value : 0;
93
- }
94
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ProgressCircleComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
95
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.23", type: ProgressCircleComponent, isStandalone: true, selector: "kirby-progress-circle", inputs: { value: "value", size: "size", themeColor: "themeColor" }, host: { properties: { "attr.role": "this.role", "attr.aria-valuenow": "this.value", "class": "this._cssSize" } }, ngImport: i0, template: "<div class=\"transcluded-content\">\n <ng-content></ng-content>\n</div>\n<kirby-progress-circle-ring\n [themeColor]=\"themeColor\"\n [value]=\"_shownValue\"\n [size]=\"size\"\n></kirby-progress-circle-ring>\n", styles: [":host{display:inline-block;position:relative;overflow:hidden;width:var(--kirby-progress-circle-size);height:var(--kirby-progress-circle-size)}:host(.sm){--kirby-progress-circle-stroke-width: 3px;--kirby-progress-circle-size: clamp(var(--kirby-spacing-xl), 2.5em, var(--kirby-spacing-xxxl))}:host(.md){--kirby-progress-circle-stroke-width: 4px;--kirby-progress-circle-size: var(--kirby-spacing-xxxl)}:host(.lg){--kirby-progress-circle-stroke-width: 6px;--kirby-progress-circle-size: calc(var(--kirby-spacing-xxxl) + var(--kirby-spacing-xl))}:host(.sm) .transcluded-content{font-size:var(--kirby-font-size-xs)}:host(.md) .transcluded-content,:host(.lg) .transcluded-content{font-size:var(--kirby-font-size-s)}.transcluded-content,kirby-progress-circle-ring{position:absolute;top:0;left:0}kirby-progress-circle-ring{z-index:calc(var(--kirby-z-index-default) + 1)}.transcluded-content{width:100%;height:100%;display:flex;justify-content:center;align-items:center;z-index:var(--kirby-z-index-default);border-radius:var(--kirby-border-radius-circle);overflow:hidden}\n"], dependencies: [{ kind: "component", type: ProgressCircleRingComponent, selector: "kirby-progress-circle-ring", inputs: ["value", "themeColor", "size"] }, { kind: "directive", type: ThemeColorDirective, selector: "kirby-avatar[themeColor], kirby-card[themeColor], kirby-icon[themeColor], kirby-progress-circle-ring[themeColor], kirby-modal-footer[themeColor], kirby-empty-state[themeColor]", inputs: ["themeColor"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
96
- }
97
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: ProgressCircleComponent, decorators: [{
98
- type: Component,
99
- args: [{ imports: [ProgressCircleRingComponent, ThemeColorDirective], selector: 'kirby-progress-circle', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"transcluded-content\">\n <ng-content></ng-content>\n</div>\n<kirby-progress-circle-ring\n [themeColor]=\"themeColor\"\n [value]=\"_shownValue\"\n [size]=\"size\"\n></kirby-progress-circle-ring>\n", styles: [":host{display:inline-block;position:relative;overflow:hidden;width:var(--kirby-progress-circle-size);height:var(--kirby-progress-circle-size)}:host(.sm){--kirby-progress-circle-stroke-width: 3px;--kirby-progress-circle-size: clamp(var(--kirby-spacing-xl), 2.5em, var(--kirby-spacing-xxxl))}:host(.md){--kirby-progress-circle-stroke-width: 4px;--kirby-progress-circle-size: var(--kirby-spacing-xxxl)}:host(.lg){--kirby-progress-circle-stroke-width: 6px;--kirby-progress-circle-size: calc(var(--kirby-spacing-xxxl) + var(--kirby-spacing-xl))}:host(.sm) .transcluded-content{font-size:var(--kirby-font-size-xs)}:host(.md) .transcluded-content,:host(.lg) .transcluded-content{font-size:var(--kirby-font-size-s)}.transcluded-content,kirby-progress-circle-ring{position:absolute;top:0;left:0}kirby-progress-circle-ring{z-index:calc(var(--kirby-z-index-default) + 1)}.transcluded-content{width:100%;height:100%;display:flex;justify-content:center;align-items:center;z-index:var(--kirby-z-index-default);border-radius:var(--kirby-border-radius-circle);overflow:hidden}\n"] }]
100
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }], propDecorators: { role: [{
101
- type: HostBinding,
102
- args: ['attr.role']
103
- }], value: [{
104
- type: HostBinding,
105
- args: ['attr.aria-valuenow']
106
- }, {
107
- type: Input
108
- }], size: [{
109
- type: Input
110
- }], themeColor: [{
111
- type: Input
112
- }], _cssSize: [{
113
- type: HostBinding,
114
- args: ['class']
115
- }] } });
116
-
117
- /**
118
- * Generated bundle index. Do not edit.
119
- */
120
-
1
+ import * as i0 from "@angular/core";
2
+ import { ChangeDetectionStrategy, Component, HostBinding, Input } from "@angular/core";
3
+ import { ThemeColorDirective } from "@kirbydesign/designsystem/shared";
4
+ var ProgressCircleRingComponent = class ProgressCircleRingComponent {
5
+ constructor() {
6
+ this.UPPER_AND_LOWER_BOUND_GAP = 2.5;
7
+ this.value = 0;
8
+ this.themeColor = "success";
9
+ this.size = "md";
10
+ }
11
+ get _sizeClass() {
12
+ return this.size;
13
+ }
14
+ ngAfterViewInit() {
15
+ this.viewInitialized = true;
16
+ }
17
+ get _progress() {
18
+ if (this.value <= 0) return 0;
19
+ if (this.value >= 100) return 100;
20
+ return Math.min(this.value, 100 - this.UPPER_AND_LOWER_BOUND_GAP);
21
+ }
22
+ get _linecap() {
23
+ return this._progress <= 0 || this._progress >= 100 ? "butt" : "round";
24
+ }
25
+ get _remainder() {
26
+ return 100 - this._progress;
27
+ }
28
+ static {
29
+ this.ɵfac = i0.ɵɵngDeclareFactory({
30
+ minVersion: "12.0.0",
31
+ version: "22.2.2",
32
+ ngImport: i0,
33
+ type: ProgressCircleRingComponent,
34
+ deps: [],
35
+ target: i0.ɵɵFactoryTarget.Component
36
+ });
37
+ }
38
+ static {
39
+ this.ɵcmp = i0.ɵɵngDeclareComponent({
40
+ minVersion: "14.0.0",
41
+ version: "22.2.2",
42
+ type: ProgressCircleRingComponent,
43
+ isStandalone: true,
44
+ selector: "kirby-progress-circle-ring",
45
+ inputs: {
46
+ value: "value",
47
+ themeColor: "themeColor",
48
+ size: "size"
49
+ },
50
+ host: { properties: {
51
+ "class": "this._sizeClass",
52
+ "class.view-initialized": "this.viewInitialized"
53
+ } },
54
+ ngImport: i0,
55
+ template: "<svg width=\"100%\" height=\"100%\" aria-hidden=\"true\">\n <circle\n shape-rendering=\"geometricPrecision\"\n class=\"circle\"\n fill=\"transparent\"\n cx=\"50%\"\n cy=\"50%\"\n />\n <circle\n shape-rendering=\"geometricPrecision\"\n class=\"progress\"\n fill=\"transparent\"\n pathLength=\"100\"\n cx=\"50%\"\n cy=\"50%\"\n [attr.stroke-linecap]=\"_linecap\"\n [attr.stroke-dasharray]=\"_progress + ' ' + _remainder\"\n />\n</svg>\n",
56
+ styles: [".kirby-line-clamp{display:-webkit-box;-webkit-line-clamp:var(--line-clamp, none);-webkit-box-orient:vertical;overflow:hidden}:host{width:100%;height:100%}:host.success{--kirby-progress-circle-stroke-color: var(--kirby-color-border-success-loud)}:host.warning{--kirby-progress-circle-stroke-color: var(--kirby-color-border-warning-loud)}:host.danger{--kirby-progress-circle-stroke-color: var(--kirby-color-border-danger-loud)}:host.view-initialized .progress{transition-property:stroke-dasharray,stroke;transition-duration:var(--kirby-transition-duration-extra-long);transition-timing-function:var(--kirby-transition-easing-enter-exit);transform-origin:50% 50%;stroke:var(--kirby-progress-circle-stroke-color, var(--kirby-color-border-success-loud))}svg{rotate:-90deg}.circle,.progress{r:calc(50% - var(--kirby-progress-circle-stroke-width, 4px) / 2);stroke-width:var(--kirby-progress-circle-stroke-width, 4px)}.circle{stroke:var(--kirby-color-border-base-quiet)}\n"],
57
+ changeDetection: i0.ChangeDetectionStrategy.OnPush
58
+ });
59
+ }
60
+ };
61
+ i0.ɵɵngDeclareClassMetadata({
62
+ minVersion: "12.0.0",
63
+ version: "22.2.2",
64
+ ngImport: i0,
65
+ type: ProgressCircleRingComponent,
66
+ decorators: [{
67
+ type: Component,
68
+ args: [{
69
+ selector: "kirby-progress-circle-ring",
70
+ changeDetection: ChangeDetectionStrategy.OnPush,
71
+ template: "<svg width=\"100%\" height=\"100%\" aria-hidden=\"true\">\n <circle\n shape-rendering=\"geometricPrecision\"\n class=\"circle\"\n fill=\"transparent\"\n cx=\"50%\"\n cy=\"50%\"\n />\n <circle\n shape-rendering=\"geometricPrecision\"\n class=\"progress\"\n fill=\"transparent\"\n pathLength=\"100\"\n cx=\"50%\"\n cy=\"50%\"\n [attr.stroke-linecap]=\"_linecap\"\n [attr.stroke-dasharray]=\"_progress + ' ' + _remainder\"\n />\n</svg>\n",
72
+ styles: [".kirby-line-clamp{display:-webkit-box;-webkit-line-clamp:var(--line-clamp, none);-webkit-box-orient:vertical;overflow:hidden}:host{width:100%;height:100%}:host.success{--kirby-progress-circle-stroke-color: var(--kirby-color-border-success-loud)}:host.warning{--kirby-progress-circle-stroke-color: var(--kirby-color-border-warning-loud)}:host.danger{--kirby-progress-circle-stroke-color: var(--kirby-color-border-danger-loud)}:host.view-initialized .progress{transition-property:stroke-dasharray,stroke;transition-duration:var(--kirby-transition-duration-extra-long);transition-timing-function:var(--kirby-transition-easing-enter-exit);transform-origin:50% 50%;stroke:var(--kirby-progress-circle-stroke-color, var(--kirby-color-border-success-loud))}svg{rotate:-90deg}.circle,.progress{r:calc(50% - var(--kirby-progress-circle-stroke-width, 4px) / 2);stroke-width:var(--kirby-progress-circle-stroke-width, 4px)}.circle{stroke:var(--kirby-color-border-base-quiet)}\n"]
73
+ }]
74
+ }],
75
+ propDecorators: {
76
+ value: [{ type: Input }],
77
+ themeColor: [{ type: Input }],
78
+ size: [{ type: Input }],
79
+ _sizeClass: [{
80
+ type: HostBinding,
81
+ args: ["class"]
82
+ }],
83
+ viewInitialized: [{
84
+ type: HostBinding,
85
+ args: ["class.view-initialized"]
86
+ }]
87
+ }
88
+ });
89
+ var ProgressCircleComponent = class ProgressCircleComponent {
90
+ get _cssSize() {
91
+ return this.size;
92
+ }
93
+ constructor(elementRef, changeDetectorRef) {
94
+ this.elementRef = elementRef;
95
+ this.changeDetectorRef = changeDetectorRef;
96
+ this.role = "progressbar";
97
+ this.value = 0;
98
+ this.size = "md";
99
+ this.themeColor = "success";
100
+ this.onIntersectionChange = (entries) => {
101
+ this.hasElementBeenVisible = entries && entries.some((entry) => entry.isIntersecting);
102
+ if (this.hasElementBeenVisible) {
103
+ this.unobserve();
104
+ this.changeDetectorRef.markForCheck();
105
+ }
106
+ };
107
+ }
108
+ ngAfterViewInit() {
109
+ if (!this.observer) {
110
+ this.observer = new IntersectionObserver(this.onIntersectionChange, { threshold: .5 });
111
+ this.observer.observe(this.elementRef.nativeElement);
112
+ }
113
+ }
114
+ ngOnDestroy() {
115
+ this.unobserve();
116
+ }
117
+ unobserve() {
118
+ if (this.observer) {
119
+ this.observer.unobserve(this.elementRef.nativeElement);
120
+ if (typeof this.observer.disconnect === "function") this.observer.disconnect();
121
+ }
122
+ }
123
+ get _shownValue() {
124
+ return this.hasElementBeenVisible ? this.value : 0;
125
+ }
126
+ static {
127
+ this.ɵfac = i0.ɵɵngDeclareFactory({
128
+ minVersion: "12.0.0",
129
+ version: "22.2.2",
130
+ ngImport: i0,
131
+ type: ProgressCircleComponent,
132
+ deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }],
133
+ target: i0.ɵɵFactoryTarget.Component
134
+ });
135
+ }
136
+ static {
137
+ this.ɵcmp = i0.ɵɵngDeclareComponent({
138
+ minVersion: "14.0.0",
139
+ version: "22.2.2",
140
+ type: ProgressCircleComponent,
141
+ isStandalone: true,
142
+ selector: "kirby-progress-circle",
143
+ inputs: {
144
+ value: "value",
145
+ size: "size",
146
+ themeColor: "themeColor"
147
+ },
148
+ host: { properties: {
149
+ "attr.role": "this.role",
150
+ "attr.aria-valuenow": "this.value",
151
+ "class": "this._cssSize"
152
+ } },
153
+ ngImport: i0,
154
+ template: "<div class=\"transcluded-content\">\n <ng-content></ng-content>\n</div>\n<kirby-progress-circle-ring\n [themeColor]=\"themeColor\"\n [value]=\"_shownValue\"\n [size]=\"size\"\n></kirby-progress-circle-ring>\n",
155
+ styles: [":host{display:inline-block;position:relative;overflow:hidden;width:var(--kirby-progress-circle-size);height:var(--kirby-progress-circle-size)}:host(.sm){--kirby-progress-circle-stroke-width: 3px;--kirby-progress-circle-size: clamp(var(--kirby-spacing-xl), 2.5em, var(--kirby-spacing-xxxl))}:host(.md){--kirby-progress-circle-stroke-width: 4px;--kirby-progress-circle-size: var(--kirby-spacing-xxxl)}:host(.lg){--kirby-progress-circle-stroke-width: 6px;--kirby-progress-circle-size: calc(var(--kirby-spacing-xxxl) + var(--kirby-spacing-xl))}:host(.sm) .transcluded-content{font-size:var(--kirby-font-size-xs)}:host(.md) .transcluded-content,:host(.lg) .transcluded-content{font-size:var(--kirby-font-size-s)}.transcluded-content,kirby-progress-circle-ring{position:absolute;top:0;left:0}kirby-progress-circle-ring{z-index:calc(var(--kirby-z-index-default) + 1)}.transcluded-content{width:100%;height:100%;display:flex;justify-content:center;align-items:center;z-index:var(--kirby-z-index-default);border-radius:var(--kirby-border-radius-circle);overflow:hidden}\n"],
156
+ dependencies: [{
157
+ kind: "component",
158
+ type: ProgressCircleRingComponent,
159
+ selector: "kirby-progress-circle-ring",
160
+ inputs: [
161
+ "value",
162
+ "themeColor",
163
+ "size"
164
+ ]
165
+ }, {
166
+ kind: "directive",
167
+ type: ThemeColorDirective,
168
+ selector: "kirby-avatar[themeColor], kirby-card[themeColor], kirby-icon[themeColor], kirby-progress-circle-ring[themeColor], kirby-modal-footer[themeColor], kirby-empty-state[themeColor]",
169
+ inputs: ["themeColor"]
170
+ }],
171
+ changeDetection: i0.ChangeDetectionStrategy.OnPush
172
+ });
173
+ }
174
+ };
175
+ i0.ɵɵngDeclareClassMetadata({
176
+ minVersion: "12.0.0",
177
+ version: "22.2.2",
178
+ ngImport: i0,
179
+ type: ProgressCircleComponent,
180
+ decorators: [{
181
+ type: Component,
182
+ args: [{
183
+ imports: [ProgressCircleRingComponent, ThemeColorDirective],
184
+ selector: "kirby-progress-circle",
185
+ changeDetection: ChangeDetectionStrategy.OnPush,
186
+ template: "<div class=\"transcluded-content\">\n <ng-content></ng-content>\n</div>\n<kirby-progress-circle-ring\n [themeColor]=\"themeColor\"\n [value]=\"_shownValue\"\n [size]=\"size\"\n></kirby-progress-circle-ring>\n",
187
+ styles: [":host{display:inline-block;position:relative;overflow:hidden;width:var(--kirby-progress-circle-size);height:var(--kirby-progress-circle-size)}:host(.sm){--kirby-progress-circle-stroke-width: 3px;--kirby-progress-circle-size: clamp(var(--kirby-spacing-xl), 2.5em, var(--kirby-spacing-xxxl))}:host(.md){--kirby-progress-circle-stroke-width: 4px;--kirby-progress-circle-size: var(--kirby-spacing-xxxl)}:host(.lg){--kirby-progress-circle-stroke-width: 6px;--kirby-progress-circle-size: calc(var(--kirby-spacing-xxxl) + var(--kirby-spacing-xl))}:host(.sm) .transcluded-content{font-size:var(--kirby-font-size-xs)}:host(.md) .transcluded-content,:host(.lg) .transcluded-content{font-size:var(--kirby-font-size-s)}.transcluded-content,kirby-progress-circle-ring{position:absolute;top:0;left:0}kirby-progress-circle-ring{z-index:calc(var(--kirby-z-index-default) + 1)}.transcluded-content{width:100%;height:100%;display:flex;justify-content:center;align-items:center;z-index:var(--kirby-z-index-default);border-radius:var(--kirby-border-radius-circle);overflow:hidden}\n"]
188
+ }]
189
+ }],
190
+ ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }],
191
+ propDecorators: {
192
+ role: [{
193
+ type: HostBinding,
194
+ args: ["attr.role"]
195
+ }],
196
+ value: [{
197
+ type: HostBinding,
198
+ args: ["attr.aria-valuenow"]
199
+ }, { type: Input }],
200
+ size: [{ type: Input }],
201
+ themeColor: [{ type: Input }],
202
+ _cssSize: [{
203
+ type: HostBinding,
204
+ args: ["class"]
205
+ }]
206
+ }
207
+ });
121
208
  export { ProgressCircleComponent, ProgressCircleRingComponent };
122
- //# sourceMappingURL=kirbydesign-designsystem-progress-circle.mjs.map
209
+
210
+ //# sourceMappingURL=kirbydesign-designsystem-progress-circle.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"kirbydesign-designsystem-progress-circle.mjs","sources":["../../progress-circle/src/progress-circle-ring.component.ts","../../progress-circle/src/progress-circle-ring.component.html","../../progress-circle/src/progress-circle.component.ts","../../progress-circle/src/progress-circle.component.html","../../progress-circle/src/kirbydesign-designsystem-progress-circle.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n Input,\n} from '@angular/core';\n\n@Component({\n selector: 'kirby-progress-circle-ring',\n templateUrl: './progress-circle-ring.component.html',\n styleUrls: ['./progress-circle-ring.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ProgressCircleRingComponent implements AfterViewInit {\n private readonly UPPER_AND_LOWER_BOUND_GAP = 2.5;\n\n @Input() value: number = 0;\n @Input() themeColor: 'success' | 'warning' | 'danger' = 'success';\n @Input() size: 'sm' | 'md' | 'lg' = 'md';\n\n @HostBinding('class')\n get _sizeClass() {\n return this.size;\n }\n\n @HostBinding('class.view-initialized')\n viewInitialized;\n\n ngAfterViewInit(): void {\n this.viewInitialized = true;\n }\n\n get _progress(): number {\n if (this.value <= 0) return 0;\n if (this.value >= 100) return 100;\n return Math.min(this.value, 100 - this.UPPER_AND_LOWER_BOUND_GAP);\n }\n\n get _linecap(): 'butt' | 'round' {\n return this._progress <= 0 || this._progress >= 100 ? 'butt' : 'round';\n }\n\n get _remainder(): number {\n return 100 - this._progress;\n }\n}\n","<svg width=\"100%\" height=\"100%\" aria-hidden=\"true\">\n <circle\n shape-rendering=\"geometricPrecision\"\n class=\"circle\"\n fill=\"transparent\"\n cx=\"50%\"\n cy=\"50%\"\n />\n <circle\n shape-rendering=\"geometricPrecision\"\n class=\"progress\"\n fill=\"transparent\"\n pathLength=\"100\"\n cx=\"50%\"\n cy=\"50%\"\n [attr.stroke-linecap]=\"_linecap\"\n [attr.stroke-dasharray]=\"_progress + ' ' + _remainder\"\n />\n</svg>\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n HostBinding,\n Input,\n OnDestroy,\n} from '@angular/core';\nimport { ThemeColorDirective } from '@kirbydesign/designsystem/shared';\nimport { ProgressCircleRingComponent } from './progress-circle-ring.component';\n\n@Component({\n imports: [ProgressCircleRingComponent, ThemeColorDirective],\n selector: 'kirby-progress-circle',\n templateUrl: './progress-circle.component.html',\n styleUrls: ['./progress-circle.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ProgressCircleComponent implements AfterViewInit, OnDestroy {\n @HostBinding('attr.role') readonly role = 'progressbar';\n @HostBinding('attr.aria-valuenow')\n @Input()\n value: number = 0;\n @Input() size: 'sm' | 'md' | 'lg' = 'md';\n @Input() themeColor: 'success' | 'warning' | 'danger' = 'success';\n\n @HostBinding('class')\n get _cssSize() {\n return this.size;\n }\n\n private hasElementBeenVisible?: boolean;\n private observer: IntersectionObserver;\n\n constructor(\n private elementRef: ElementRef<HTMLElement>,\n private changeDetectorRef: ChangeDetectorRef\n ) {}\n\n ngAfterViewInit(): void {\n if (!this.observer) {\n this.observer = new IntersectionObserver(this.onIntersectionChange, {\n threshold: 0.5,\n });\n this.observer.observe(this.elementRef.nativeElement);\n }\n }\n\n ngOnDestroy(): void {\n this.unobserve();\n }\n\n private onIntersectionChange = (entries: IntersectionObserverEntry[]) => {\n this.hasElementBeenVisible = entries && entries.some((entry) => entry.isIntersecting);\n if (this.hasElementBeenVisible) {\n this.unobserve();\n this.changeDetectorRef.markForCheck();\n }\n };\n\n private unobserve() {\n if (this.observer) {\n this.observer.unobserve(this.elementRef.nativeElement);\n // Safari does not support \"disconnect\", see: https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#Browser_compatibility\n if (typeof this.observer.disconnect === 'function') {\n this.observer.disconnect();\n }\n }\n }\n\n get _shownValue() {\n // This is needed to make an animation [0 -> value] when element is shown to the user\n return this.hasElementBeenVisible ? this.value : 0;\n }\n}\n","<div class=\"transcluded-content\">\n <ng-content></ng-content>\n</div>\n<kirby-progress-circle-ring\n [themeColor]=\"themeColor\"\n [value]=\"_shownValue\"\n [size]=\"size\"\n></kirby-progress-circle-ring>\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-progress-circle.mjs","names":[],"sources":["../../progress-circle/src/progress-circle-ring.component.ts","../../progress-circle/src/progress-circle-ring.component.html","../../progress-circle/src/progress-circle.component.ts","../../progress-circle/src/progress-circle.component.html"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n Input,\n} from '@angular/core';\n\n@Component({\n selector: 'kirby-progress-circle-ring',\n templateUrl: './progress-circle-ring.component.html',\n styleUrls: ['./progress-circle-ring.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ProgressCircleRingComponent implements AfterViewInit {\n private readonly UPPER_AND_LOWER_BOUND_GAP = 2.5;\n\n @Input() value: number = 0;\n @Input() themeColor: 'success' | 'warning' | 'danger' = 'success';\n @Input() size: 'sm' | 'md' | 'lg' = 'md';\n\n @HostBinding('class')\n get _sizeClass() {\n return this.size;\n }\n\n @HostBinding('class.view-initialized')\n viewInitialized;\n\n ngAfterViewInit(): void {\n this.viewInitialized = true;\n }\n\n get _progress(): number {\n if (this.value <= 0) return 0;\n if (this.value >= 100) return 100;\n return Math.min(this.value, 100 - this.UPPER_AND_LOWER_BOUND_GAP);\n }\n\n get _linecap(): 'butt' | 'round' {\n return this._progress <= 0 || this._progress >= 100 ? 'butt' : 'round';\n }\n\n get _remainder(): number {\n return 100 - this._progress;\n }\n}\n","<svg width=\"100%\" height=\"100%\" aria-hidden=\"true\">\n <circle\n shape-rendering=\"geometricPrecision\"\n class=\"circle\"\n fill=\"transparent\"\n cx=\"50%\"\n cy=\"50%\"\n />\n <circle\n shape-rendering=\"geometricPrecision\"\n class=\"progress\"\n fill=\"transparent\"\n pathLength=\"100\"\n cx=\"50%\"\n cy=\"50%\"\n [attr.stroke-linecap]=\"_linecap\"\n [attr.stroke-dasharray]=\"_progress + ' ' + _remainder\"\n />\n</svg>\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n HostBinding,\n Input,\n OnDestroy,\n} from '@angular/core';\nimport { ThemeColorDirective } from '@kirbydesign/designsystem/shared';\nimport { ProgressCircleRingComponent } from './progress-circle-ring.component';\n\n@Component({\n imports: [ProgressCircleRingComponent, ThemeColorDirective],\n selector: 'kirby-progress-circle',\n templateUrl: './progress-circle.component.html',\n styleUrls: ['./progress-circle.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ProgressCircleComponent implements AfterViewInit, OnDestroy {\n @HostBinding('attr.role') readonly role = 'progressbar';\n @HostBinding('attr.aria-valuenow')\n @Input()\n value: number = 0;\n @Input() size: 'sm' | 'md' | 'lg' = 'md';\n @Input() themeColor: 'success' | 'warning' | 'danger' = 'success';\n\n @HostBinding('class')\n get _cssSize() {\n return this.size;\n }\n\n private hasElementBeenVisible?: boolean;\n private observer: IntersectionObserver;\n\n constructor(\n private elementRef: ElementRef<HTMLElement>,\n private changeDetectorRef: ChangeDetectorRef\n ) {}\n\n ngAfterViewInit(): void {\n if (!this.observer) {\n this.observer = new IntersectionObserver(this.onIntersectionChange, {\n threshold: 0.5,\n });\n this.observer.observe(this.elementRef.nativeElement);\n }\n }\n\n ngOnDestroy(): void {\n this.unobserve();\n }\n\n private onIntersectionChange = (entries: IntersectionObserverEntry[]) => {\n this.hasElementBeenVisible = entries && entries.some((entry) => entry.isIntersecting);\n if (this.hasElementBeenVisible) {\n this.unobserve();\n this.changeDetectorRef.markForCheck();\n }\n };\n\n private unobserve() {\n if (this.observer) {\n this.observer.unobserve(this.elementRef.nativeElement);\n // Safari does not support \"disconnect\", see: https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#Browser_compatibility\n if (typeof this.observer.disconnect === 'function') {\n this.observer.disconnect();\n }\n }\n }\n\n get _shownValue() {\n // This is needed to make an animation [0 -> value] when element is shown to the user\n return this.hasElementBeenVisible ? this.value : 0;\n }\n}\n","<div class=\"transcluded-content\">\n <ng-content></ng-content>\n</div>\n<kirby-progress-circle-ring\n [themeColor]=\"themeColor\"\n [value]=\"_shownValue\"\n [size]=\"size\"\n></kirby-progress-circle-ring>\n"],"mappings":"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"}